[问题] 继承与聚合

楼主: dwight90488 (陈佳佳)   2017-10-20 00:14:17
开发平台(Platform): (Ex: Win10, Linux, ...)
Win7
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
C++
问题(Question):
想请问大大们 继承与聚合的建构方式
Class:乐器 聚合 Class:乐器规格(InstrumentSpec)
作者: PkmX (阿猫)   2017-10-20 00:21:00
你这样guitar里面会有两个独立的*Spec成员
作者: z1976 (z1976)   2017-10-20 02:33:00
因为乐器规格是动态型别,所以建议用指标用智慧型指标不用管理delete
作者: legendmtg (CLANNAD)   2017-10-20 12:07:00
为什么你的GuitarSpec要继承InstrumentSpec?
楼主: dwight90488 (陈佳佳)   2017-10-20 12:08:00
因为很多乐器规格是共有的 所以GuitarSpec我也继承了
作者: legendmtg (CLANNAD)   2017-10-20 13:58:00
不是有共同的属性就要继承啊 是取决于你要怎么操作两个改法 1. GuitarSpec不要继承InstrumentSpec2. 吉他不要有GuitarSpec 直接用乐器的InstrumentSpec指标指向GuitarSpec物件
楼主: dwight90488 (陈佳佳)   2017-10-20 20:05:00
谢谢以上各位的回答 Legendmtg大大说的没错我仔细想了之后 好像不是必要继承的 我可以把guitarSpec当成是 吉他规格是跟乐器相比多出来的属性
作者: y3k (激流を制するは静水)   2017-10-21 16:58:00
借文问一下 这样的Case在CPP用template写有跟Java、C#一样便利吗@@ 最近刚开始从那两个进到这里来...
作者: uranusjr (←這人是超級笨蛋)   2017-10-21 18:25:00
就这个 case 来讲用 template 就和 generics 差不多

Links booklink

Contact Us: admin [ a t ] ucptt.com