社区
C++ 语言
帖子详情
我不想要两份代码
cpp99
2004-03-30 04:23:40
我有两个类A和B
他们有三个成员函数完全一样,而且代码特别长,他们都调用到了C类的成员函数
我不想要两份代码
请问:我有什么选择?
...全文
22
15
打赏
收藏
我不想要两份代码
我有两个类A和B 他们有三个成员函数完全一样,而且代码特别长,他们都调用到了C类的成员函数 我不想要两份代码 请问:我有什么选择?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cpp99
2004-04-05
打赏
举报
回复
bridge 模式
是什么东西?
cpp99
2004-04-05
打赏
举报
回复
我现在是新写一个类
把上面所说的三个函数放到里面去
然后两个类A和B都调用新类的成员函数
因为我的软件的框架已经定下了
不能随便给两个类A和B再弄一个父类
请各路高人评一下我的做法
Wolf0403
2004-04-05
打赏
举报
回复
老土:这就是我说的组合了:)
conghonglei
2004-04-04
打赏
举报
回复
使用private 继承,表达 WORK_LIKE_THIS 语义
Wolf0403
2004-04-04
打赏
举报
回复
不能“滥用”不代表不能用。这里的话用 private inheritance + using declaration 或者 组合 + bridge 模式都可以。(其实本质是一样的)
meijing
2004-04-04
打赏
举报
回复
公共部分做基类?
不是大师们都强调不要滥用继承吗?
如果不是真的继承关系的话还是将公共部分做成单独的类。
A,B都包含该类为成员变量。
cgsw12345
2004-04-04
打赏
举报
回复
private inheritance + using declaration 或者 组合 + bridge 模式
conghonglei
2004-04-04
打赏
举报
回复
使用继承时是应当仔细分析一下,
A 和B 存在共同的特性,应当考虑是否应抽象出一个层出来。
另外public 继承表达IS_A关系,属于接口继承。
private 继承表达WORK_LIKE_A 或 USABLE_AS_A 关系,属于实现继承。在你的这种情况下,private继承也应当注意只使用base class的公有接口,
在《c++设计新思维》中提到一个“正交分解”的概念,你可以参考一下应该如何分析设计类,以及使用继承。
Bruceleexiaokan
2004-03-30
打赏
举报
回复
把相同提出来做基类,由于基类只用于实现A和B,可不做接口,故private继承就可以了
pinboo
2004-03-30
打赏
举报
回复
把相同提出来做基类
classrect
2004-03-30
打赏
举报
回复
从A,B中提取出一个基类(Super Class),
这个基类去关联C。
hpho
2004-03-30
打赏
举报
回复
意思是叫你把这部分提取出来.
不过我想知道A和B应该有关系吧?!
cpp99
2004-03-30
打赏
举报
回复
Extract Class或者Extract Super Class
是什么意思?
zouxueping
2004-03-30
打赏
举报
回复
把相同部分提取出来组成一个基类
北极猩猩
2004-03-30
打赏
举报
回复
Extract Class或者Extract Super Class
iOS比较
两份
代码
差异
目前有
两份
代码
,想知道哪份是最新的,
两份
代码
直接扔在了服务器上,除了创建时间不一样,其他都一样。尴尬了,不得不说xcode确实挺好用的。 1.拿出FileMerge 2.选择
两份
代码
的路径(选择到项目的目录即可),...
程序员如何使正确卖出自己的程序但是不想被人知道
代码
的具体实现?
我们在卖出程序的时候,卖出程序收到钱这是第一笔费用,然后后期的维护更新这些又能得到第二笔费用,在售卖程序的时候,我们往往是不想让别人知道我们的具体的
代码
实现的,这在某种程度上也是实现一份
代码
,卖出多份...
代码
写不出来,想辞职
看着那些乱七八糟的
代码
,我很气愤也好难过,但是我没得选择,因为我必须服从上级,要么就辞职,可是对于一个刚刚出来工作的大学生来说,或许我这样的工作已经让一些人羡慕了,说真的我不想丢掉这份工作,可是...
Java学习
代码
合集
其实我学习java最根本的原因是:我是一个挺关注外在的人,虽然是个程序员,所以我很喜欢写出那些带有漂亮的界面的程序,因为C总是控制台,我不是很喜欢,在这份java
代码
合集中,我会记录自己学习Java界面化编程的...
9款
代码
比较工具
对于经常写
代码
,又改
代码
的程序员来说,如果之前写的
代码
,过了很久又需要改,那么查找不同之处相当困难。如果这时候有一款
代码
比较工具,将会非常方便。W3Cschool 资深用户归纳总结 9 款常用的
代码
比较工具,赶快...
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章