查看: 943|回复: 4

C++教学:类的继承-风之神韵

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2015-9-30 21:31:49 | 显示全部楼层 |阅读模式




上一节举了很多例子介绍了面向对象编程的思想,现在大多数中文/外语都是面向对象编程,因为它可以解决庞大项目难以维护的问题。
在面向对象编程中我们常常要创建一些类,然后创建类的很多实例让他们去工作。创建类或者说对类的设计是一门学问,也是一门艺术,更重要的是大部分设计经验来自于实践。
没有一个人在项目一开始就能设计出一个完美的后期不再修改的类。原因是我们有着奇思妙想的客户,有着跨平台等各种硬性需求,还有人们越来越懒惰或者说是追求完美的编程习惯。
那么上述问题是实际存在的,但是作为程序员最讨厌的就是修改,或者说不稳定的设计,对类的不断修改显得非常的不现实,不合理。这时候一个名词横空出世,那就是“继承”。
平时所说的“继承”往往说继承父辈的遗产,继承老爹的公司的管理,之所以这样说是因为他们之间有共性,所以我们可以拿继承公司的管理举个栗子!老爹经营了一辈子的公司,积累了大量的财富,最重要的是聚集锤炼了一大批人才,还有符合时宜的管理方法。那么老爹也有Over的时候,那就得需要后继有人啊,儿子理所当然的继承了公司的所有财产,业务,还有管理权。新官上任三把火,我得弄点跟老爹不一样的东西,我得修改点什么。修改也不能瞎折腾,公司的90%的运营模式都是合理的,在继承这些模式基础上,我做一些10%修改,来适应当下变幻莫测的经济形势,最终整个公司的运营仍然是成功的。
最终儿子继承了老爹的财富,公司的人才资源,大部分的运营模式,而不是说来了个儿子,要想大显自己的身手,必须得从零开始,把公司地基扒了,其实没有必要也不能这样做。
上面这个例子就说明了我们可以通过“继承”来实现在一件事的基础上做简单的修改。在面向对象编程中的“继承”的含义也如此,我们称呼“父类”和“子类”,或者叫做“基类”和“派生类”。
如果把“生物”当做基类,派生类可以是“动物”、“植物”;
如果把“动物”当做基类,派生类可以是“哺乳类”、“爬行类”、“鸟类”等;
如果把“交通工具”当做基类,派生类可以是“自行车”、“公交车”、“轿车”等。
就如我们的文章封面的关系图一样,如果给动物定义一个类的方法,叫做“移动”,那么其派生类对基类的“移动”这个方法做任何修改都可以,鸟类的移动可以是飞行,人类的移动可以是走路,鱼类的移动可以是游动。。。
下面是具体到C++代码的书写方式:class AnimalClass{  void Move()
  {  }};class Fish : public AnimalClass{  void Move()
  {
  //游动的代码实现
  }
};class Bird : public AnimalClass{void Move()
{
//飞行的代码实现
}
}; 下面是具体到虚幻脚本代码的书写方式:-----------------------------AnimalClass.ucclass AnimalClass;
function Move(){}-----------------------------Fish.ucclass Fish extends AnimalClass
function Move(){  //游动的代码实现
}-----------------------------Bird.ucclass Bird extends AnimalClass
function Move(){//飞行的代码实现
}
对应于类继承的功能还有很多,这篇文章只是讲一下有继承这么回事,后续内容请持续关注“风之神韵”的微信公众平台。
微信订阅号搜索“风之神韵”,关注随时获取更多教学信息。
http://i.youku.com/u/UMTE5MzA2NDA0
回复

使用道具 举报

0

主题

826

帖子

2765

积分

vip会员

Rank: 1

积分
2765
发表于 2015-10-12 23:46:04 | 显示全部楼层
oh magat   
回复 支持 反对

使用道具 举报

0

主题

814

帖子

2699

积分

vip会员

Rank: 1

积分
2699
发表于 2015-10-13 02:34:50 | 显示全部楼层
虽然google 很少有人用  
回复 支持 反对

使用道具 举报

0

主题

867

帖子

2874

积分

vip会员

Rank: 1

积分
2874
发表于 2015-10-13 03:38:42 | 显示全部楼层
楼主,是你让我深深地理解了‘人外有人,天外有天’这句话 谢谢侬     
回复 支持 反对

使用道具 举报

0

主题

1271

帖子

3982

积分

vip会员

Rank: 1

积分
3982
发表于 2015-10-13 11:07:53 | 显示全部楼层
呵呵  我傻了‘ 哈哈  
回复 支持 反对

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部