string類有兩種實現方式:
一:
class string
else
}~string()
}string(const string&s)//拷貝構造引數
string&operator=(const string&s)//賦值運算子過載
return *this;
}private:
char*p;
};
二.
建構函式和析構函式都和第一種一樣(所以這裡就不寫了),不同的是拷貝建構函式和賦值運算子的過載
class
string
/*賦值運算子的過載一*/
string&operator=(const
string&s)//詳細解釋見下圖
return *this;
}/*賦值運算子的過載二*/
string&operator=(string s)//引數不是引用,避免物件s被修改
特別注意當在main ()函式中定義如下物件 string s1=s2;,編譯器會進行優化處理,直接呼叫拷貝建構函式。
string類的實現
參考c primer.string類的實現,清翔兔 06,jan.includeusing namespace std class string string void private char m data inline string string const char str inline st...
String類的實現
學習資料結構寫了乙個string的類,貼出來求指教 ifndef string h h define string h h include include include define defaultsize 128 class string maxsize為傳入引數的string string c...
string類的實現
include using namespace std class string public string const char str 0 普通建構函式 string const string other 拷貝建構函式 string void 析構函式 string operator const...