我可以使用默認參數的構造函數這樣也許默認參數
Soldier(int entyID, int hlth = 100, int exp = 10, string nme) : entityID(entyID = globalID++), health(hlth), experience(exp), name(nme = SelectRandomName(exp)) { }
我想例如EXP = 10默認,但能夠覆蓋這個值,如果我在構造函數中提供它否則它應該使用默認值。
我怎麼能做到這一點,我知道我的方法是行不通的....
如果我提供的初始化列表,無論什麼我在構造函數中提供大幹快上。另一方面ofcourse覆蓋的任何值,每當我在構造函數中提供一個值,那麼爲什麼每當我爲對象啓動提供一個值時,我首先需要默認值...?
我應該使用不同的重載構造函數還是你有其他想法....?
是的,你應該使用重載的構造函數。 – 2009-10-27 23:14:22
您的構造函數定義不會編譯,而您的文章似乎描述了運行時行爲。這意味着你很可能發佈了一個僞造的構造函數定義。請發佈一個真實的。 – AnT 2009-10-27 23:51:50
如果你的構造函數可能只有一個參數被調用,它應該是「顯式」的。 – 2009-10-28 07:35:19