面試題1 賦值運算子函式

2022-08-03 15:24:11 字數 772 閱讀 2502

如下為型別cmystring的宣告,請為該型別新增賦值運算子函式。

class

cmystring

;

考慮到上述問題,就能較好的解決問題;但是,如果使程式更加魯棒,我們應該考慮異常安全性。有兩種方法:

先用new分配新內容,再用delete釋放已有的內容

先建立乙個臨時例項,再交換臨時例項和原來的例項

#include #include 

class

cmystring ;

cmystring::cmystring(

char*pdata)

else

}cmystring::cmystring(

const cmystring&str)

//cmystring& cmystring::operator = (const cmystring& str)

cmystring& cmystring::operator = (const cmystring&str)

return *this;}

void

cmystring::print()

cmystring ::~cmystring()

//***************==test***************===

void

test1()

void

test2()

void

test3()

intmain()

面試題1 賦值運算子函式

面試題1 為如下cmysting的宣告,新增賦值運算子函式。class cmystring 注意事項 1.是否把返回值型別宣告為該型別的引用,並在函式結束前返回例項自身的引用 即 this 2.是否把傳入的引數的型別宣告為常量引用。3.是否釋放例項自身的記憶體。4.是否判斷傳入的引數和當前的例項是不...

面試題1 賦值運算子函式

面試題1 為如下cmysting的宣告,新增賦值運算子函式。class cmystring 注意事項 1.是否把返回值型別宣告為該型別的引用,並在函式結束前返回例項自身的引用 即 this 2.是否把傳入的引數的型別宣告為常量引用。3.是否釋放例項自身的記憶體。4.是否判斷傳入的引數和當前的例項是不...

面試題1 賦值運算子函式

題目 如下型別為cmystring的宣告,請為該型別新增賦值運算子函式。class cmystring 賦值運算子 函式 cmystring cmystring operator const cmystring str 當記憶體不夠時,new char會丟擲異常,分配記憶體失敗,m pdata將是乙...