C++中public继承的概念和用法介绍

分类:知识百科 日期: 点击:0

C++中public继承的概念和用法

C++中public继承是一种类与类之间的关系,它表示一种“is-a”的关系,即子类是父类的一种特殊情况。public继承指的是继承关系中,父类的public成员可以被子类继承,而子类也可以访问父类的public成员。

class Parent {
public:
    int a;
};

class Child : public Parent {
public:
    int b;
};

在上面的例子中,Child类继承自Parent类,它的public成员a可以被Child类继承,而Child类也可以访问Parent类的public成员。

在实际应用中,public继承可以用来实现多态,即子类可以重写父类的public成员函数,从而实现多态。

class Parent {
public:
    virtual void print() {
        cout << "This is Parent" << endl;
    }
};

class Child : public Parent {
public:
    void print() {
        cout << "This is Child" << endl;
    }
};

int main() {
    Parent *p = new Child;
    p->print(); // 输出 "This is Child"
    delete p;
    return 0;
}

在上面的例子中,Child类重写了Parent类的print成员函数,当使用Parent类的指针指向Child类时,调用print成员函数时,会调用Child类的print成员函数,从而实现多态。

public继承还可以用来实现类的聚合,即子类可以拥有父类的public成员,从而实现类的聚合。

class Parent {
public:
    int a;
};

class Child {
public:
    Parent p;
    int b;
};

在上面的例子中,Child类拥有Parent类的public成员a,从而实现了类的聚合。

public继承是C++中一种常用的继承关系,它可以用来实现多态和类的聚合,从而提高程序的可维护性和可扩展性。

标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。