= 演算子 (C# リファレンス)
代入演算子 (=) では、右辺のオペランドの値が左辺のオペランドで示された格納場所、プロパティ、またはインデクサーに格納され、その値が結果として返されます。 両側のオペランドは、同じ型である必要があります。同じ型でない場合、右辺のオペランドは、左辺のオペランドの型に暗黙に変換できる必要があります。
解説
代入演算子は、オーバーロードできません。 ただし、暗黙の変換演算子を型に定義すると、それらの型で代入演算子を使用できるようになります。 詳細については、「変換演算子の使用 (C# プログラミング ガイド)」を参照してください。
使用例
class Assignment
{
static void Main()
{
double x;
int i;
i = 5; // int to int assignment
x = i; // implicit conversion from int to double
i = (int)x; // needs cast
Console.WriteLine("i is {0}, x is {1}", i, x);
object obj = i;
Console.WriteLine("boxed value = {0}, type is {1}",
obj, obj.GetType());
i = (int)obj;
Console.WriteLine("unboxed: {0}", i);
}
}
/*
Output:
i is 5, x is 5
boxed value = 5, type is System.Int32
unboxed: 5
*/