帶有指標的成員的類必須有拷貝建構函式和拷貝賦值函式,
淺拷貝預設的賦值函式會將乙個指標賦值給另乙個,導致進行賦值的物件指標指向的內容記憶體洩漏
string.h
#ifndef __mystring__
#define __mystring__
class
string
private
:char
* m_data;};
#endif
string.cpp
#define _crt_secure_no_warnings
#include
"string.h"
#include
string::
string
(const
char
* cstr)
else
}string::
~string()
// 深拷貝
string::
string
(const string& str)
string& string::
operator=(
const string& str)
C (2) 拷貝構造 拷貝複製 析構
拷貝建構函式,與建構函式不同的是。傳入值的型別是它自己const string str。拷貝賦值函式同理,傳入的是與自己同型別的引數。inline string string const string str 如上 所作的操作為深拷貝 s2 s1 編譯器預設版本只把指標拷貝過來的為淺拷貝 如字串s2...
析構函式 , 建構函式, 拷貝複製函式
不管類中是否定義了自己的析構函式,編譯器自動執行類中非static資料成員的析構函式 expriment 2.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std expriment 2.cpp 定義控制台應用程式的入口點。in...
C 建構函式 拷貝構造 析構函式
建構函式 constructor 在例項物件時,系統自動呼叫,用來初始化物件的資料成員 建構函式宣告語法 類名 引數列表 建構函式注意點 include include using namespace std class computer 上面的建構函式也可以寫成引數列表初始化的形式 compute...