[讨论] dynamic/static polymorphism

楼主: POSIX (tedium of chores)   2015-12-24 02:07:14
小弟我稍微练习写一下 template
同时做 polymorphism
才知道用 template 写这个有这么卡 T__T
找了一些方法 最后选用 CRTP 来做
感觉上是可以解掉 dynamic binding / virtual 这类问题
但心理上总是有不踏实的感觉
先描述一下过程好了
参考了一些 design pattern, 在规划完架构开始写
一眼看见 interface 就忍不住想要来个 base reference/pointer 玩玩
而再把程式整理一下,则又发现因为不同 type 产出一样逻辑的程式码很多
又忍不住想要使用 template 把大伙儿一役解决!
就会同时写出适合 compile time 解决的 templates
和适合 runtime 解决的 dynamic binding
不晓得这样的现象是不是好的?
或是我该从哪里开始重新思考、重新审视的?
后记就是,我查到的文章都好老了 T__T
是这类的技术已经被哪些新技术取代了吗?T__T
楼主: POSIX (tedium of chores)   2015-12-24 02:10:00
阿!忘了问,CRTP 属于正常解法吗?还是通常会怎么解?
作者: fr3ak (fr3@K)   2015-12-24 15:56:00
先参考 design patterns 就是你的不对 (认真)恭喜你成为第 N 位先研究 DP 而无视原本问题的 programmer非酸!
作者: suhorng ( )   2015-12-24 16:58:00
天啊是 fr3ak 大!!XD
作者: fr3ak (fr3@K)   2015-12-24 17:20:00
suhorng, 好久没见~ (挥手
作者: rodion (r-kan/reminder)   2015-12-24 17:23:00
推楼上 原PO要不要先问问自己为何感觉不对
楼主: POSIX (tedium of chores)   2015-12-24 17:31:00
我猜fr3ak点出的问题是,DP是结果不是目的(?)这个相当同意阿
作者: fr3ak (fr3@K)   2015-12-24 17:38:00
不. 结果是以好的有效的方法解决问题. 至于 DP? 可能是也可能不是 (自己都觉得听起来像废话 XD)
楼主: POSIX (tedium of chores)   2015-12-24 17:50:00
不晓得能不能这样解释,OOAD做的好,code就写的好,DP自然会冒出来 @@"
作者: fr3ak (fr3@K)   2015-12-24 17:51:00
如果我的推文有点无厘头的话, 先道歉. 对于自己有点心得的题目, 小弟喜欢留点空间并也鼓励交流的朋友能够自行思考消化出自己的解答. 或许会比我自己心中的答案还更好自我揭露: 小弟最喜欢战 DP 跟 OO 了 (爆)
楼主: POSIX (tedium of chores)   2015-12-24 17:57:00
nonono, 写扣有bad smell, 写完全身不对劲 就该像我一样上讨鞭才会进步阿~~~~XDXD
作者: nowar100 (抛砖引玉)   2015-12-24 21:01:00
不太懂你遇到的问题是什么 想要解决runtime virtual oveahead吗 文章中看不出来你的目标是什么CRTP没有过时啊,还是有常见大型project在用
楼主: POSIX (tedium of chores)   2015-12-26 23:39:00
细读 template complete guide 还有新发现发现很多好用的东西可以解决问题,如trait或是policynowar100 说的, 已经是我“之前”想要解决的问题 ^^"a看完书以后发现有更好解法
作者: remmurds (Stronghold)   2015-12-27 12:16:00
在C++玩Design Pattern第一步就是先被C++奇怪的花招玩到晕头转向

Links booklink

Contact Us: admin [ a t ] ucptt.com