C#はどのように変数を宣言してメモリ空間を割り当てますか

値の型: int a、スタック (スタック) 内のメモリ空間を直接割り当てて、値を格納します。

参照型: preson a=new preson()、2段階に分かれる

  1. Preson a は宣言し、参照を格納するための領域をスタックに割り当てます。もちろん、このとき a は null を指します (値が割り当てられていないため、参照型の既定のアドレスは null です)。
  2. a=new preson()、マネージ ヒープ (C# の場合) で、型 preson のメモリ空間を割り当て、メモリ空間のアドレスをスタック上の a のストレージ空間に格納します。

したがって、a に格納されるのは preson インスタンスではなく、インスタンスのアドレス参照です。

おすすめ

転載: blog.csdn.net/Ling_SevoL_Y/article/details/130200758