C 單例模式 拷貝建構函式 手動實現

2021-06-25 14:33:12 字數 855 閱讀 1178

單例模式 涉及到 智慧型指標,記憶體中的堆和棧

拷貝建構函式 涉及到const reference傳遞 以及空間大小等

**如下:

/*手動實現乙個string的建構函式、拷貝建構函式以及拷貝assignment函式*/

#include #include using namespace std;

class mystring

;//char* mystring::m_pdata = null;

//construct function

mystring::mystring(char *pdata)

else

//cout<< m_pdata

}int test1()

int test2()

void test3()

int main()

執行結果:

單例模式:

/*手動實現乙個單例模式*/

#include #include using namespace std;

class singleton

return instance.get();

} ~singleton();

auto_ptrsingleton::instance;

int main()

執行結果:

C 實現單例模式

給所需要進行單例的類ctest的建構函式宣告為private或者protected 防止在類外隨意生成ctest的物件 然後宣告乙個靜態成員變數 instance 乙個靜態成員函式getinsance staticctest getinstance staticctest instance 靜態成員...

C 實現單例模式

ifndef singleton h define singleton h include include using namespace std class locker inline locker inline void lock inline void unlock private pthre...

C 實現單例模式

class singleton 私有建構函式 singleton const singleton 拷貝建構函式,只宣告不定義,這要當使用者或友元想要拷貝構造該類的已存在例項時會出錯。singleton operator const singleton 賦值運算子,只宣告不定義,作用同上 public...