我尝试使用AIP
public int AIP_NoSet
{
get { ;}
}
编译器说这是一个错误:
Program.c1.AIP_NoSet.get':并非所有代码路径都返回一个值
但即使我写了
public int AIP_NoSet
{
get { ;}
set { ;}
}
它向我显示了同样的错误。
我哪里错了?
答案 0 :(得分:4)
你应该写
public int AIP { get; set; }
当你在它之后写{ ;}
时,这被视为用户实现的属性的语法错误尝试。你不能没有setter,但你可以将setter设为私有:
public int AIP_PrivateSet { get; private set; }
答案 1 :(得分:2)
derp的一刻。
public int AIP_NoSet { get; set; }
听起来你想要一个只定义了'get'的自动属性。
编译器不允许这样做。
您可以通过添加private
集(正如其他人已经回答)或不使用自动属性来完成此操作:
private int _aip = int.MaxValue;
public int AIP_NoSet { get {return _aip;}}
或者,如果您不想设置它,只需使用const:
public const int AIP_NoSet = 2;
答案 2 :(得分:2)
将setter访问权限设为私有并修复语法。
public int AIP_NoSet { get; private set; }