我們不能創建抽象類的對象,對吧?那麼我怎樣才能調用一個在抽象基類和派生類中定義的虛函數呢?我想執行抽象基類中的代碼,但目前我正在使用派生類的對象。如何在C++中的抽象基類和派生類中定義基類的虛函數定義?
class T
{
public:
virtual int f1()=0;
virtual int f2() { a = 5; return a }
}
class DT : public T
{
public:
int f1() { return 10; }
int f2() { return 4; }
}
int main()
{
T *t;
t = new DT();
............
}
有什麼辦法可以使用對象t調用基類函數嗎?如果不可能,我需要做些什麼才能調用基類函數?
如何創建一個最小的,完整的,並且可驗證例如http://stackoverflow.com/幫助/ mcve –
@RichardCritten一般來說很有用,但要公平起見,OP對代碼的描述足以理解。 – Angew