c++继承
Posted 牛郎恋刘娘,刘娘念牛郎
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++继承相关的知识,希望对你有一定的参考价值。
c++继承
c++继承
C++ 继承是一种面向对象编程的重要特性,它允许我们创建一个新的类,从现有的类中继承属性和方法,并且可以添加新的属性和方法。
在 C++ 中,继承是通过关键字 class 或 struct 后面跟着一个冒号和基类名称来实现的,基类可以是任何已存在的类,派生类继承了基类的所有公有和受保护的成员,但不继承基类的私有成员。
下面是一个简单的 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);
;
int main()
Rectangle rect;
rect.setWidth(5);
rect.setHeight(10);
int area = rect.getArea();
cout << "Area: " << area << endl;
return 0;
在上面的例子中,我们定义了一个基类 Shape,它有两个成员变量 width 和 height,以及两个成员函数 setWidth 和 setHeight。然后我们定义了一个派生类 Rectangle,它从基类 Shape 继承了 width 和 height,并且定义了一个成员函数 getArea,用于计算矩形的面积。
在主函数中,我们创建了一个 Rectangle 对象 rect,并设置其宽度和高度,最后调用 getArea 函数计算矩形的面积并输出。
需要注意的是,派生类只能访问基类的公有和受保护成员,不能访问基类的私有成员。同时,派生类可以覆盖基类的成员函数,也可以添加新的成员函数和成员变量,以满足自己的需求。
Public
那么 继承的时候 用pulic的意义在哪?
在 C++ 中,继承使用 public 访问修饰符的原因是为了实现代码的重用和多态性。
通过 public 继承,子类可以继承基类的公有成员和受保护成员,这样可以避免在子类中重新编写基类的代码,实现了代码的重用。
同时,通过 public 继承,子类可以对基类的成员函数进行覆盖,从而实现多态性。多态性是面向对象编程的一个重要特性,它可以使代码更加灵活和可扩展。如果使用 private 或 protected 继承,子类无法访问基类的公有成员,也无法对基类的成员函数进行覆盖,这就限制了代码的重用和多态性。
另外,需要注意的是,使用 public 继承时,子类可以访问基类的公有成员和受保护成员,但是不能直接访问基类的私有成员。如果需要访问基类的私有成员,可以通过基类的公有成员函数或受保护成员函数来实现。
C++的多重继承
- 基类
class Base { public: int baseInt; };
- 继承自基类的两个并列的类
clase Left : public Base { Left() : Base() //注意要继承基类构造函数 { } };
clase Right : public Base { Right() : Base() //注意要继承基类构造函数 { } };
- 多重继承上面两个类
clase Multi : public Left, public Right { Multi() : Base(), Left(), Right() //继承所有基类构造函数 { } };
以上是关于c++继承的主要内容,如果未能解决你的问题,请参考以下文章