我在尝试让子功能工作时遇到困难:
.h 文件
class Parent {
int id;
public:
virtual int getid();
}
class Child : public Parent {
int id;
public:
int getid();
}
.cc 文件
Parent::Parent( int num ) {
id = num;
}
int Parent::getid() {
cout << "Parent!";
return id;
}
Child::Child( int num ) : Parent(num) {
id = num;
}
int Child::getid() {
cout << "Child!";
return id;
}
当我Child kid = Child(0);
拨打电话kid.getid();
时,我会得到Parent!
而不是Child!
。
我的实施有什么问题?