類會預設產生的成員函式

2021-07-12 03:09:05 字數 834 閱讀 5517

說明:**來自《程式設計師面試寶典》

#includeusing namespace std;

class string

;string::string(const char *str)

else

}string::~string()

string::string(const string &other)//相當於對乙個新的例項進行初始化化,other表示提供值的哪乙個例項

else

}string::string::operator=(const string &other)//賦值函式

c++中的賦值和拷貝:

拷貝:對未初始化的記憶體進行初始化工作。

string s1("hello");    string s2(s1)//或string s2=s1;

賦值:對已初始化的記憶體進行再操作(重新賦值)

string s1("hello");    string s2;    string s2=s1;//s2已經被初始化過了,只不過初始化為空

int length=strlen(other.m_data)計算的是指標所指字串長度而不是指標的長度。

注意sizeof和strlen

strlen:乙個用來計數的函式,接收乙個char *作為引數,碰到'\0'結束。所以必須是計算以'\0'結尾的(不包括'\0')。

#includeusing namespace std;

int main()

void getn()

{cout《父類的函式和變數不會因為同名而被子類覆蓋,父類指標變數要指明初始化,其他變數可預設。

C 空類預設產生的成員

一共有6個 empty 預設建構函式 empty const empty 預設拷貝建構函式 empty 預設析構函式 empty operator const empty 預設賦值運算子 empty operator 取址運算子 const empty operator const 取址運算子 co...

C 中的空類預設產生的類成員函式

對於乙個c 的空類 比如empty 1 class empty 2 雖然empty類定義中沒有任何成員,但為了進行一些預設的操作,編譯器會加入以下一些成員函式,這些成員函式使得類的物件擁有一些通用的功能 1 預設建構函式和複製建構函式。他們被用於類的物件的構造過程。2 析構函式。它被用於類的物件的析...

類的預設成員函式

class time time int hour,int minute,int second 有參的建構函式 time int hour 9,int minute 54,int second 23 全預設建構函式 time int hour,int minute 12,int second 30 半...