C 使用值型類

2021-05-21 17:47:39 字數 549 閱讀 6313

c++使用值型類

值語義意思是指複製值弄物件時,使用乙個不同的新副本,對副本所作的改變不會反映在原有物件上。

在c++中可以使指標表現得像乙個值,在複製指標時,不只複製指標的位址,還複製指標所指向的記憶體物件。

下面是乙個簡單的值型類

class hasptr

hasptr(const hasptr &orig):ptr(new int(orig.ptr)),val(orig.val){}

hasptr& operator=(const hasptr&);

~hasptr()

int get_ptr_val() const

int get_int() const

void set_int(int *p)

void set_int(int i)

int *get_ptr() const

void set_ptr_val(int p) const

};hasptr& hasptr::operator=(const hasptr &rhs)

定義值型類

include using namespace std 定義值型別來處理指標資料成員 class hasptr 建構函式 指標賦值時建立乙個記憶體副本 hasptr const hasptr orig ptr new int orig.ptr val orig.val 複製建構函式 指標賦值時建立乙...

智慧型指標(使用計數) 定義值型類

1 什麼是使用計數?使用計數是複製控制成員中使用的程式設計技術。將乙個計數器與類指向的物件相關聯,用於跟蹤該類有多少個物件共享同一指標。建立乙個單獨類指向共享物件並管理使用計數。由建構函式設定共享物件的狀態並將使用計數置為1。每當由複製建構函式或賦值操作符生成乙個新副本時,使用計數加1。由析構函式撤...

C 泛型 泛型類擴充套件

泛型 更準確的使用一種以上的型別 方式 泛型允許我們宣告型別引數化的 我們可以用不同的型別進行例項化 也就是說,我們可以用 型別佔位符 型別引數 來宣告,然後在建立例項時提供真實型別 泛型不是型別,而是型別的模板 c 提供了5種泛型 類 結構 介面 委託和方法。前面四個是型別,方法是成員。一 泛型類...