作者sorryChen (陳揚和)
看板Programming
標題[請益] C++中contructor 的overloading
時間Thu Jul 19 15:39:26 2007
以前用overloading來產生同名不同參數的function
常常這樣寫 f(int a){....} f(int a, int b){ .... f(a){...}
就是在新多增加參數的函數中呼叫之前定義參數少的函數
(這是假設新定義多參數的函數 只是比原定義的函數多做一些事情
原來的事情還是要做)
但是碰到要新增加參數的constructor要overloading的時候
constructor(int a){...}
constructor(int a, int b)
{
this->b = b;
constructor(a);
}
這樣編譯會過耶 可是不是如我預期的 是否會是new了兩個物件阿..
並不是像原來我想的單純坐完多做的事情在做原來要做的..
constructor好像不能隨便自己call自己
有人可以解說一下嗎
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 128.125.87.33
推 revivalworld:不過就是個暫時物件而已= =... 60.244.252.15 07/19 17:09
推 avhacker:相當於 constructor tmp(a); 而已 140.123.19.235 07/19 17:27
推 march20:用 default parameter 吧 71.136.230.54 07/19 18:19
推 march20:不然就把 setting 的部份 factor out 71.136.230.54 07/19 18:20