温馨提示×

c++父类指针怎么指向子类对象

c++
小亿
126
2023-11-30 20:16:11
栏目: 编程语言

要让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函数。这就是通过父类指针指向子类对象的方法。

0