3
有沒有辦法根據其他調用來替換可能的基類的多個函數的「堆棧繼承」類型?來自多個類的C++多態性
例如像:
class Base {
void func1(){/* do something */}
void func2(){/* do something */}
};
class A1 {
void func1(){/* do something else */}
};
class A2 {
void func2(){/* do something else */}
};
int main(){
A1 a1obj = new A1();
A2 a2obj = new A2();
Base obj = new Base();
obj = &a1obj;
obj = &a2obj;
obj.func1(); //now A1::func1()
obj.func2(); //now A2::func2()
}
謝謝
打開你的C++的書,介紹瞭如何使用'章std :: function',並讀取它。 –
是的,但是你的函數需要是虛擬的,你需要從基類派生出來,如果你使用多態的基類型來工作,你需要使用指針或引用。 –
這可能會通過閱讀一些好的初學者書籍來解答(http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 –