更新:2007 年 11 月
错误消息
无法修改“expression”的返回值,因为它不是变量试图修改的值类型是中间表达式的结果。该值是不持久的,因此它将保持不变。
若要解决该错误,请将表达式的结果存储在中间值中,或对中间表达式使用引用类型。
示例
下面的代码生成错误 CS1612。
复制代码 | |
---|---|
// CS1612.cs public struct MyStruct { public int Width; } public class ListView { public MyStruct Size { get { return new MyStruct(); } } } public class MyClass { public MyClass() { ListView lvi; lvi = new ListView(); lvi.Size.Width = 33; // CS1612 // Use this instead: // MyStruct temp = lvi.Size; // temp.Width = 33; } public static void Main() {} } |