[問題] copy constructor跟assignment operator
各位版友好
最近回來複習了C++
class CExample {
public:
CExample(){a = 5;b = 6;}
CExample(const CExample &rv){printf("copy\n");a = rv.a;b = rv.b;}
void operator=(const CExample &rv)
{
printf("assignment\n");
a = rv.a;
b = rv.b;
}
int a,b;
};
CExample a = b; //這個是呼叫copy constructor,為什麼不是呼叫assignment
//overloading?
a = b; //這個只呼叫assignment overloading function
為什麼會有這樣的差異?
謝謝各位版友的指教
--
~宅男的四個徵兆~
∠□ ○ ! * \○/ ★ (○ ?
╦╦└□ " ○□═ □ □>
║║√√ ╦══╦ ∥ |\
一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.171.81.6
※ 編輯: Arim 來自: 118.171.81.6 (10/24 22:40)
※ 編輯: Arim 來自: 118.171.81.6 (10/24 22:43)
推
10/24 22:47, , 1F
10/24 22:47, 1F
推
10/24 22:55, , 2F
10/24 22:55, 2F
謝謝..
因為有等號所以我以為兩個都是assignment..
※ 編輯: Arim 來自: 118.171.81.6 (10/24 23:04)
※ 編輯: Arim 來自: 118.171.81.6 (10/24 23:07)
推
10/25 01:00, , 3F
10/25 01:00, 3F
推
10/25 02:51, , 4F
10/25 02:51, 4F
推
10/25 02:53, , 5F
10/25 02:53, 5F
推
10/25 03:06, , 6F
10/25 03:06, 6F
→
10/25 03:07, , 7F
10/25 03:07, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章