在C++中,有三种继承方式:公有继承、私有继承和保护继承。这些方式有不同的特点和用途,下面将逐一进行详细介绍,并以表格形式展示它们的不同点。
公有继承
公有继承是最常用的一种继承方式,它将基类的公有成员和保护成员都继承到派生类中,而基类的私有成员不会被继承。在公有继承中,通过派生类对象可以直接访问基类的公有成员和保护成员,但不能访问基类的私有成员。公有继承的语法格式为:
class派生类名:public基类名{//派生类成员声明};
私有继承
私有继承将基类的公有成员、保护成员和私有成员都继承到派生类中,但在派生类中,基类的公有成员和保护成员都变成了私有成员。这意味着,通过派生类对象只能访问到基类的公有成员和保护成员,而不能访问基类的私有成员。私有继承的语法格式为:
class派生类名:private基类名{//派生类成员声明};
保护继承
保护继承将基类的公有成员和保护成员都继承到派生类中,但在派生类中,基类的公有成员变成了保护成员,基类的保护成员也变成了派生类的保护成员。这意味着,通过派生类对象只能访问到基类的保护成员,而不能访问基类的公有成员。保护继承的语法格式为:
class派生类名:protected基类名{//派生类成员声明};
继承方式比较
下表列出了三种继承方式的不同点: