对封装和继承的小疑问

地狱业火 2011-11-19 12:21:07

在用小项目的方式写一个模拟问题
http://acm.hdu.edu.cn/showproblem.php?pid=1107

有一个基类person, 三个派生类少林,武当,峨眉。三个门派在一个地图上进行战斗和移动。

学C的时候喜欢去思考面向过程,分成一个个门派去运行。不知道怎么用面向对象的方法去封装处理数据,把他们共同的东

西结合起来,避免重复。求思路求指点~~
...全文
108 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
healer_kx 2011-11-19
  • 打赏
  • 举报
回复
http://www.cnblogs.com/healerkx/category/136925.html
对象 2011-11-19
  • 打赏
  • 举报
回复
基类是person,提供公共接口,三个派生类提供各自的实现,这是封装和继承特性。用基类指针实例化子类,这样在调用的时候可以用OO的多态特性,不用指定是谁执行,只要传入基类指针即可,数据是动态绑定的。
turing-complete 2011-11-19
  • 打赏
  • 举报
回复
zzcmx2008 2011-11-19
  • 打赏
  • 举报
回复
还是先了解下c++的思想吧:抽象、封装、继承、多态
ryfdizuo 2011-11-19
  • 打赏
  • 举报
回复
找本C++的书看看。。。
healer_kx 2011-11-19
  • 打赏
  • 举报
回复
3楼是我blog,
具体这个问题可以这么来。

搞个Person类,然后里面有个int成员,表示门派的。

或者你搞个Person基类,有少林Person和武当Person等派生类~

如果不考虑派别可能更换,那么后者可能简单一些。
JieTouLangRen 2011-11-19
  • 打赏
  • 举报
回复
将他们共同的属性放在person类中,
在基类中声明他们共同的操作如战斗、移动
在子类中补充特有的属性 实现具体操作

OOP的思维需要慢慢培养,多练习 ,加油!!

65,187

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧