Avatar ·

如何在C#中为自动属性(auto-property)设置初始值?

```html 大家好!我是C#新手,遇到了一个问题。我希望我的类有一个属性,在创建对象时立即具有某个默认值,例如数字0或字符串"未指定"。我使用自动属性(auto-properties),因为它们方便简洁。 以下是我的类示例: ```csharp public class Person { public string Name { get; set; } public int Age { get; set; } } ``` 当我创建对象 `Person p = new Person();` 时,`Name` 和 `Age` 属性会获得类型的默认值(字符串为 `null`,int 为 `0`)。但我希望 `Name` 初始为 `"Гость"`,而 `Age` 初始为 `18`。 我知道可以在构造函数中实现: ```csharp public Person() { Name = "Гость"; Age = 18; } ``` 但有没有办法直接在属性声明中设置,就像字段那样?例如,对于字段我可以写 `private int _age = 18;`。但对于自动属性不行吗?我试过写 `public int ```