c++

c++继承的三种方式是什么

小亿
91
2024-01-24 22:10:56
栏目: 编程语言

C++中有三种常见的继承方式:公有继承、私有继承和保护继承。

  1. 公有继承(public inheritance):公有继承中,派生类继承了基类的公有成员和保护成员,而私有成员不可继承。在公有继承中,基类的公有成员在派生类中仍然是公有的。
class Base {
public:
    int publicMember;
protected:
    int protectedMember;
private:
    int privateMember;
};

class Derived : public Base {
    // Derived继承了Base的publicMember和protectedMember
};
  1. 私有继承(private inheritance):私有继承中,派生类继承了基类的公有成员和保护成员,而私有成员不可继承。但与公有继承不同的是,基类的公有成员在派生类中变为私有的。私有继承方式通常用于实现"has-a"关系,即派生类通过私有继承获得基类的功能,但不会暴露给外部。
class Derived : private Base {
    // Derived继承了Base的publicMember和protectedMember,并将其变为私有的
};
  1. 保护继承(protected inheritance):保护继承中,派生类继承了基类的公有成员和保护成员,而私有成员不可继承。与私有继承类似,保护继承方式也通常用于实现"has-a"关系,但保护继承方式下,基类的公有成员在派生类中变为保护的,不能被外部访问。
class Derived : protected Base {
    // Derived继承了Base的publicMember和protectedMember,并将其变为保护的
};

0
看了该问题的人还看了