Re: [請益] C++中contructor 的overloading
※ 引述《sorryChen (陳揚和)》之銘言:
: 以前用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自己
: 有人可以解說一下嗎
把共同初始化放在一個private method中, 如prv_init()
然後不同的constructor都必須要先呼叫這個方法
為了避免被使用者亂呼叫, 所以記得要用private來把它包起來
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.62.156.165
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Programming 近期熱門文章
PTT數位生活區 即時熱門文章