C 建構函式例子

2021-06-29 00:32:25 字數 1035 閱讀 6594

已知string類定義如下:

class string

public:

string(constchar *str = null); // 通用建構函式

string(conststring &another); // 拷貝建構函式

~ string(); // 析構函式

string &operater =(const string &rhs); // 賦值函式

private:

char *m_data; //用於儲存字串

下面寫出其中類成員函式的實現。

string::string(const char *str)

if ( str == null) //strlen在引數為null時會拋異常才會有這步判斷

m_data = new char[1] ;  //分配乙個char型別的記憶體空間

m_data[0] = '\0' ;

else

m_data = new char[strlen(str) + 1];      //開闢一段char型別的空間

strcpy(m_data,str);                             //賦值初始化

string::string(const string &another)

m_data = newchar[strlen(another.m_data) + 1];

strcpy(m_data, another.m_data);

string& string::operator =(const string&rhs)

if ( this ==&rhs)

return *this ;

delete m_data;//刪除原來的資料,新開一塊記憶體

m_data = newchar[strlen(rhs.m_data) + 1];

strcpy(m_data,rhs.m_data);

return *this ;

string::~string()

delete m_data;

C 建構函式 例子

建構函式,去掉this class person public person string name,string int age,double weight public void eatfood double quanity class program age weight firstman.n...

c 建構函式 例子學習

using system using system.collections.generic using system.linq using system.text using system.threading.tasks namespace 複習 列印物件的時候使用的get方法 set name v...

字元函式例子

要查詢以某個字結尾等於什麼的記錄 select from vehicle 車牌號以7結尾的資料記錄 select from vehicle t where trim t.veh no like 7 用函式的方式 select from vehicle t where substr trim t.ve...