通过Vala文档阅读,我发现这里有一个定义属性的简写:
public class Person : Object {
public int age { get; set; default = 32; }
}
我尝试通过从列表中删除set;
来定义只读变量,但是我得到一个编译错误,必须定义getter。我已经使用了缩写形式:
public class Person : Object {
private int _age = 32;
public int age {
get { return _age; }
}
}
有没有办法使用速记符号来定义一个setter?
答案 0 :(得分:6)
没有。如果您可以public int age { get; }
,那么价值会来自哪里?
你可能想要的是:
public class Person : Object {
public int age { get; private set; }
}