编译器错误 CS1059
更新:2007 年 11 月
错误消息
增量或减量运算符的操作数必须为变量、属性或索引器。
在尝试递增或递减常量值时,会引发此错误。如果尝试递增表达式(如 (a+b)++),也会发生此错误。
更正此错误
使变量成为非常量变量。
移除增量或减量运算符。
将表达式存储在一个变量中,然后递增该变量。
示例
下面的示例生成 CS1059,因为 i 是常量而不是变量,并且 E 为 Enum 类型,该类型的元素也是常量值。
// CS1059.cs
class Program
{
public enum E : sbyte
{
a = 1,
b = 2
}
static void Main(string[] args)
{
const int i = 0;
i++; // CS1059
E test = E.a++; // CS1059
}
}