21xrx.com
2025-04-09 02:07:34 Wednesday
文章检索 我的文章 写文章
C++默认继承方式简介
2023-07-05 02:18:45 深夜i     17     0
C++ 默认 继承 方式 简介

C++是一种面向对象的编程语言,其中“继承”是其核心特性之一。通过继承,一个类可以从另一个类(称为基类或父类)中派生而来,从而重用基类的公共属性和方法,以及添加自己的独特属性和方法。在C++中,有三种继承方式:公有继承、私有继承和保护继承。本文将介绍C++默认继承方式。

C++默认继承方式是公有继承,也就是说,当我们不指定继承方式时,派生类将自动公有继承基类。在公有继承中,基类的公共成员和保护成员都可以被派生类访问,而私有成员则不能。派生类可以直接访问基类中的公共成员,也可以利用基类的公共方法访问受保护的成员。此外,任何对基类进行的更改都会影响到派生类。

下面是一个小例子,演示了如何使用C++默认继承方式:

#include <iostream>
using namespace std;
class Shape {
public:
  void setWidth(int w)
    width = w;
  
  void setHeight(int h)
    height = h;
  
protected:
  int width;
  int height;
};
class Rectangle: public Shape {
public:
  int getArea() {
    return (width * height);
  }
};
int main() {
  Rectangle rect;
  rect.setWidth(5);
  rect.setHeight(7);
  // 输出矩形面积
  cout << "矩形的面积是:" << rect.getArea() << endl;
  return 0;
}

在这个例子中,我们先定义了一个Shape类,并在其中定义了两个受保护的成员变量width和height,以及两个公共方法setWidth()和setHeight()。接着我们定义了一个Rectangle类,使用public关键字继承Shape类(因为我们没有显式地指定继承方式,所以使用了默认的公有继承)。在Rectangle类中,我们定义了一个getArea()方法,用来计算矩形的面积。为了计算面积,我们可以直接访问基类中的width和height成员变量。

在主函数中,我们创建了一个Rectangle对象rect,并通过setWidth()和setHeight()方法设置了矩形的宽度和高度。然后我们调用rect的getArea()方法,并输出矩形的面积。

总结一下,C++默认继承方式是公有继承。在公有继承中,基类的公共成员和保护成员都可以被派生类访问。为了避免出现意外的问题,我们建议在定义派生类时显式指定继承方式。

  
  

评论区

请求出错了