コンパイラ エラー CS1612
更新 : 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() {}
}