2017年1月2日 星期一

[C++] Ref Class and Value Class

Reference: https://social.msdn.microsoft.com/Forums/vstudio/en-US/15d4d4c1-9bb0-430d-a48b-d21ea6ee578f/ref-class-vs-value-class?forum=vclanguage

Class 的類別成員預設是私有, Struct 的成員則是公開

Ref class or struct 將創件參考型別. 他們被管理在堆疊(heap) 並且只能參考 (像指標) 那些被儲存的物件並且傳送

Value class or struct 是實質型別. 當你當作參數傳送或者當成成員時, 整個記憶體區塊將被傳送, 所以你應該只在小的資料型別傳送實質型別

你的預設應該總是 ref class, 只有相當小的型別像 指標 或 Color 在 framework, 你應該選擇 value struct.

沒有留言:

張貼留言