首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在目标c中将基类指针指向派生类

在这个问答内容中,我们需要了解一些关于指针和类的基本概念。首先,基类指针是一个指向基类对象的指针,而派生类是从基类派生出来的一个子类。在C++中,可以将基类指针指向派生类的对象,这种操作被称为“向上转型”。

以下是一个简单的示例,说明如何在目标c中将基类指针指向派生类:

代码语言:cpp
复制
#include<iostream>

class Base {
public:
    void print() {
        std::cout << "Base class print function"<< std::endl;
    }
};

class Derived : public Base {
public:
    void print() {
        std::cout << "Derived class print function"<< std::endl;
    }
};

int main() {
    Base* base_ptr = new Derived(); // 将基类指针指向派生类对象
    base_ptr->print(); // 输出 "Base class print function"
    delete base_ptr;
    return 0;
}

在这个示例中,我们创建了一个基类Base和一个从Base派生的子类Derived。在main函数中,我们创建了一个指向Derived类对象的Base类指针,并调用了print函数。由于base_ptr是一个Base类指针,它只能访问Base类的成员函数,因此调用的是Base类的print函数,输出结果为“Base class print function”。

需要注意的是,虽然基类指针可以指向派生类对象,但是当使用基类指针访问派生类的成员时,只能访问基类中的成员。如果需要访问派生类中的成员,需要将基类指针转换为派生类指针。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券