コンパイラ エラー CS1655
更新 : 2007 年 11 月
エラー メッセージ
'読み取り専用の変数型'であるため、'変数' のフィールドを ref または out 引数として渡せません
このエラーは、foreach、using、fixed のいずれかの変数のメンバを ref 引数または out 引数として関数に渡そうとした場合に発生します。これらのコンテキストでは、変数は読み取り専用と見なされるため、このような記述は認められません。
次の例では CS1655 エラーが生成されます。
// CS1655.cs
struct S
{
public int i;
}
class CMain
{
static void f(ref int iref)
{
}
public static void Main()
{
S[] sa = new S[10];
foreach(S s in sa)
{
CMain.f(ref s.i); // CS1655
}
}
}