阅读量:0
要让C++父类指针指向子类对象,可以使用向上转型。向上转型是指将子类的对象赋值给父类的指针或引用,这样父类的指针就可以指向子类的对象。
示例代码如下所示:
class Parent { public: virtual void print() { cout << "This is the parent class." << endl; } }; class Child : public Parent { public: void print() override { cout << "This is the child class." << endl; } }; int main() { Child childObj; Parent* parentPtr = &childObj; // 使用父类指针指向子类对象 parentPtr->print(); // 调用的是子类的print函数 return 0; }
在上述示例中,我们定义了一个父类Parent和一个子类Child,子类继承自父类。在main函数中,我们创建了一个Child类的对象childObj,然后使用父类指针parentPtr指向childObj对象。接下来,我们通过parentPtr调用print函数,实际上调用的是子类Child的print函数。这就是通过父类指针指向子类对象的方法。