我已經減少了我的問題到下面的示例代碼:爲繼承的類的默認構造方法
class pokemon{
public:
pokemon(int n);
};
class MewTwo : public pokemon {
public:
MewTwo(int n);
};
MewTwo::MewTwo(int n) {}
將會產生一個錯誤:
no matching function for call to ‘pokemon::pokemon()’
我認爲的情況是,當我嘗試編寫不存在的MewTwo構造函數時,會調用pokemon的默認構造函數。我對C++比較陌生,所以我只是在這裏猜測。有任何想法嗎?
限制:修復程序無法修改或添加公共成員到類。
我從來沒有聽說過成員初始化列表,感謝它現在完美意義上的鏈接! :) – Coltin 2010-12-04 06:27:46