C#_List のメモというより参照型のメモ

new で実体を生成する。new で実体と矢印が出来る?

 

    List<T> test;

test の中には、実体がある場所を指し示す矢印的なもの ( 参照 ) が入っている。
これだけだと、T 型の List ができますよと宣言しているだけ

 

    List<hoge> test = new List<hoge>();
    test.Add(fuga);

new することにより実体ができので、
Add により実体に fuga が追加できる。

実体:int や string など値のこと。C#の場合値は矢印と別世界にある。
世界:メモリのスタックとヒープ。

 

ex )

    //配列を作る、と宣言。
    TextBox[ ] textBoxes ;

    //4 つの長さの配列を作る。( 実体が生成 ) イメージは空箱が生成
    textBoxes = new TextBox[4];

    //上を一行で書いた場合。
    TextBox[ ] textBoxes = new TextBox[4];
   
    //1 つの箱の中に、テキストボックスを作る。( 実体が生成 )
    //空箱にテキストボックスを生成
    textBoxes[0] = new TextBox();

    //上すべてを一行で書くと
    TextBox[ ] textBoxes
        = new TextBox[] {
            new TextBox(), new TextBox(),
            new TextBox(), new TextBox()
            };
   
    // new してやっと下のようなコードがかける。
    textBoxes[0].Text = "";

 

 

以上。