在Vala中定义只读属性的更好方法

时间:2014-06-19 03:55:09

标签: properties readonly vala

通过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?

1 个答案:

答案 0 :(得分:6)

没有。如果您可以public int age { get; },那么价值会来自哪里?

你可能想要的是:

public class Person : Object {
  public int age { get; private set; }
}