次の方法で共有


方法 : ポインタを使用してメンバにアクセスする (C# プログラミング ガイド)

更新 : 2007 年 11 月

unsafe コンテキストで宣言された構造体のメンバにアクセスするには、次の例に示すように、メンバ アクセス演算子を使用できます。p は、メンバ x を含む構造体のポインタになります。

CoOrds* p = &home;
p -> x = 25; //member access operator ->

使用例

次の例では、x と y の 2 つの座標を含む構造体である CoOrds を宣言し、インスタンス化します。-> メンバ アクセス演算子と、home インスタンスへのポインタを使用して、x と y に値を代入します。

50sbeks5.alert_note(ja-jp,VS.90).gifメモ :

式 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 );
        }
    }
}

参照

概念

C# プログラミング ガイド

参照

ポインタ式 (C# プログラミング ガイド)

ポインタ型 (C# プログラミング ガイド)

unsafe (C# リファレンス)

fixed ステートメント (C# リファレンス)

stackalloc (C# リファレンス)

その他の技術情報

型 (C# リファレンス)