//Parent.h
class Parent{
public:
Parent(){}
~Parent(){}
virtual void func1() = 0;
};
//Child.h
#include "Parent.h"
class Child : public Parent{
int x, y;
public:
Child() : Parent(){ //constructor
}
virtual void func1();
};
//Child.cpp
#include "Child.h"
void Child::Parent::func1(){
}
这编译得很好,但是,我想把 Child 类的构造函数(和析构函数)的实现放在它的 cpp 文件中,这可能吗?如何?
我已经尝试了下面的代码,但它抛出了对 vtable for Child 的未定义引用
Child::Child() : Parent(){ //in the cpp
}
Child(); //in the header file
Child():Parent(); //also tried this one