初步入门C ++之继承的概念

继承

​ 继承,他的功能就如同他的名字一样,可以继承一个类的数据和方法,然后增添一些自己独有的数据和方法:

根据我们之前讲解初步入门C++之类的例子,假如我们现在有一个长方体的类,它和长方型类唯一不一样的数据就是它多了一个高,同时多了一个打印体积的方法,这时候我们就可以用到继承了,如下:

#include <iostream>

class rect
{
public:
    int     x;
    int     y;
    int     area;

    rect()	
    {
        std::cout << "rect 类实例已被创建" << std::endl;
        x = 0;
        y = 0;
    }
    rect(int x_input, int y_input)	
    {
        std::cout << "rect 类实例已被创建" << std::endl;
        x = x_input;
        y = y_input;
    }

    void area_printf()
    {
        area = x * y;
        std::cout << "该实例的面积是:" << area << std::endl;
        return;
    }

    ~rect()
    {
        std::cout << "rect 类实例已被释放" << std::endl;
        return;
    }
};

class rect_body : public rect
{
public:
    int     highth;
    int     volume;

    rect_body()
    {
        std::cout << "rect_body 类实例已被创建" << std::endl;
        x = 0;
        y = 0;
        highth = 0;
    }
    rect_body(int input_x, int input_y, int input_z)
    {
        std::cout << "rect_body 类实例已被创建" << std::endl;
        x = input_x;
        y = input_y;
        highth = input_z;
    }

    void volume_printf()
    {
        volume = x * y * highth;
        std::cout << "该实例的体积是:" << volume << std::endl;
        return;
    }
    ~rect_body()
    {
        std::cout << "rect_body 类实例已被释放"  << std::endl;
        return;
    }

};

int main(int argc, char* argv[])
{
    rect_body   rect_body_1(10, 3, 4);

    rect_body_1.volume_printf();

    return 0;
}

在这里插入图片描述

从执行结果来看,我们可以看到,因为 rect_body 类是继承 rect 类得来的,所以我们创建一个 rect_body 类的时候,会先建立 rect 类,然后往上面加入 rect_body 类的数据和方法,这,就是继承。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值