1. 程式人生 > >ref class 與 value class 的一些區別 和 共同點 以及一些我不理解的地方

ref class 與 value class 的一些區別 和 共同點 以及一些我不理解的地方

共同點:

都可以gcnew到clr堆裡     如: Avalue ^a = gcnew Avalue; Aref ^b = gcnew Aref;

都可以直接宣告到stack裡

Avalue a;

Aref b;

但是好多.net自帶的ref類是不可以這樣宣告的 比如說:

  1. String str;   //error,具體為什麼我還不知道

不同點:

value類有預設的複製建構函式,ref類沒有

value 只能繼承介面,ref能從介面還有其他ref那裡繼承

我覺得value class 和 ref class 的區別不只那麼少,仍然在發掘中