[問題] operator= overloading有沒有比較快的寫法@@?
當Class裡面有pointer member的時侯
常常需要overload copy constructor和assisgnment operator
讓物件在複製的時侯連pointer指向的data都複製一份出來
但是在overload上述兩個函式的時侯
其他非pointer的data member也要一行一行作assisgnment..
感覺十分麻煩
有沒有辦法用其他的方法減少coding的量呢?
比方說呼叫被overload前的那個預設函式之類..
PS.
剛剛試過
A& operator=(const A& rhs) {
if(this == &rhs)
return *this;
*this = rhs;
...balabala...
return *this
}
結果當然是recursive call到stack overflow了... /_\
原本那個被overload掉的預設copy函式有什麼辦法呼叫到嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.15.163
推
07/27 21:49, , 1F
07/27 21:49, 1F
→
07/27 21:52, , 2F
07/27 21:52, 2F
推
07/27 21:58, , 3F
07/27 21:58, 3F
→
07/27 21:59, , 4F
07/27 21:59, 4F
→
07/27 21:59, , 5F
07/27 21:59, 5F
推
07/27 22:15, , 6F
07/27 22:15, 6F
推
07/27 22:17, , 7F
07/27 22:17, 7F
→
07/27 22:30, , 8F
07/27 22:30, 8F
→
07/27 22:31, , 9F
07/27 22:31, 9F
→
07/27 23:09, , 10F
07/27 23:09, 10F
→
07/28 01:23, , 11F
07/28 01:23, 11F
推
07/28 02:08, , 12F
07/28 02:08, 12F
→
07/28 02:33, , 13F
07/28 02:33, 13F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章