继承与派生的过程C++
时间: 2023-06-17 20:04:13 浏览: 67
在 C++ 中,继承是一种对象属性的机制,允许一个类(称为子类或派生类)继承另一个类(称为父类或基类)的属性和方法。派生类可以使用其父类的方法和属性,同时还可以添加新的方法和属性以扩展其功能。
下面是一个简单的 C++ 继承示例:
```
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);
}
};
```
在这个例子中,类 `Shape` 定义了一个基本形状的宽度和高度,以及设置宽度和高度的方法。类 `Rectangle` 继承了类 `Shape` 的属性,并添加了一个计算矩形面积的方法 `getArea()`。
可以看到,`Rectangle` 类没有定义宽度和高度变量,而是通过继承 `Shape` 类中定义的这些变量来使用它们。同时,`Rectangle` 类可以使用 `Shape` 类中定义的方法,例如 `setWidth()` 和 `setHeight()`。
在 C++ 中,通过使用 `public`、`protected` 或 `private` 来指定派生类对基类成员的访问权限。`public` 表示派生类可以访问基类的公共成员,`protected` 表示派生类可以访问基类的保护成员,`private` 表示派生类不能访问基类的私有成员。
继承可以帮助简化代码并提高代码的重用性,但也需要小心使用,因为过多的继承可能会导致代码变得复杂和难以维护。