c++继承

c++继承

  • c++继承
  • Public

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++,开发语言)