方法 : ポインタを使用してメンバにアクセスする (C# プログラミング ガイド)
更新 : 2007 年 11 月
unsafe コンテキストで宣言された構造体のメンバにアクセスするには、次の例に示すように、メンバ アクセス演算子を使用できます。p は、メンバ x を含む構造体のポインタになります。
CoOrds* p = &home;
p -> x = 25; //member access operator ->
使用例
次の例では、x と y の 2 つの座標を含む構造体である CoOrds を宣言し、インスタンス化します。-> メンバ アクセス演算子と、home インスタンスへのポインタを使用して、x と y に値を代入します。
メモ : |
---|
式 p->x と式 (*p).x は等価であり、どちらの式を使用しても同じ結果が得られます。 |
// compile with: /unsafe
struct CoOrds
{
public int x;
public int y;
}
class AccessMembers
{
static void Main()
{
CoOrds home;
unsafe
{
CoOrds* p = &home;
p->x = 25;
p->y = 12;
System.Console.WriteLine("The coordinates are: x={0}, y={1}", p->x, p->y );
}
}
}