5.1继承的语法

本文介绍了C++中的继承概念,作为面向对象编程的三大特性之一,继承能够增强代码的复用性。通过举例动物、猫、狗和加菲猫的类层次关系,展示了如何通过继承实现功能的复用。代码示例中,加菲猫类继承自猫类,猫类又继承自动物类,使得加菲猫对象可以调用动物和猫类的成员函数。文章强调了继承类似高级版的“复制粘贴”,并预告将在后续内容中探讨继承的规则和方式。
摘要由CSDN通过智能技术生成

继承

继承是什么?

继承是c++的三大特性之一继承。

那么继承有什么作用?

继承可以提高我们代码的复用性。既然是复用,简单来说就是重复利用

再举一个重复利用的例子ctrl+c,ctrl+v,也是重复利用,其实复用你也可以这么理解,我们就是把将这个复制粘贴变得高级了,加了一些条条框框了而已。记住这个 “复制粘贴” ,后面讲对象模型的啥时候我们会用上。

那么我们来举一个例子就能理解如何复用:

在这里插入图片描述

看这张图片,猫和狗都是继承于动物这个类上面,猫下面又有个中猫继承于猫这个大类,但是每种猫又有自己的特性。接下来我们用代码来演示一下

继承的语法

class 子类的名字:继承方式 继承的类的名字,子类也可以叫做派生类,父类也可以叫做基类。

继承方式我们留在下一篇文章来讲解,本片文章我们都是公共继承。不涉及继承方式的讲解。

#include <iostream>
#include <string>
using namespace std;
class animal
{
public:
	void animal_fun1()
	{
		cout << "我属于胎生动物,不属于卵生动物" << endl;
	}
	void animal_fun2()
	{
		cout << "我们都有鼻子,眼睛,耳朵,腿,肚子,内脏" << endl;
	}
	int year;//我们都有我们的年龄
};
class cat :public animal
{
public:
	void cat_fun1()
	{
		cout << "我们都是猫,我们都喜欢吃耗子" << endl;
	}
	string eye_color;
};
class dog :public animal
{
public:
	void dog_fun1()
	{
		cout << "我们都是狗我们都是人类的好朋友" << endl;
	}
};
class jiafeimao :public cat
{
public:
	void jiafei()
	{
		cout << "我很胖" << endl;
	}
};
int main()
{
	jiafeimao p;
	p.eye_color = "黄色";
	p.year = 10;
	p.animal_fun1();
	p.animal_fun2();
	p.cat_fun1();
	p.jiafei();
	cout << "p眼睛的颜色是" << p.eye_color << endl;
	cout << "p的年龄是" << p.year << endl;

}

看看代码运行结果:
在这里插入图片描述
我们这个代码最后创建的是一个jiafeimao(加菲猫)的对象,加菲猫这个类继承于猫类,猫类继承于动物这个类。所以我们的p这个对象可以调用动物和猫这里面的函数。是不是和上面我们说的复制粘贴很像?就相当于把这些函数复制在了jiafeimao这个类里面。但是我们说了需要加一些条条框框规则,接下来的文章将会详细讲解继承的规则等等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值