我試圖創造一些這樣的:作爲參數的子類?
class food
{
public:
void EAT(); //Whatever happens...
int bitesLeft //This is decreased by one each time you eat the food
};
class cheese: public food
{
public:
void EAT(); //Some overloaded form of the "eat" command...
};
有沒有一種方法來創建每個在運行時的一個,並有可能採取一方爲參數沒有搞砸了每個人的bitesLeft變量的函數?
父類中的'EAT'方法不會被重載,即引用具有相同名稱但參數不同的函數。您正在考慮_overriding_,當派生類實現與父類中的名稱和參數相同的函數時會發生這種情況。但是在這種情況下,它也不會被覆蓋,因爲父類中的一個沒有標記爲「虛擬」。發生了什麼是派生類中的定義是_hiding_父類中的定義。 – 2011-02-27 17:19:24