Hybird3D

乔捷的技术博客

博客园 首页 新随笔 联系 订阅 管理

2011年3月16日 #

摘要: 近日拜读了陈硕大牛的文章C++ 工程实践(5):避免使用虚函数作为库的接口,文章的观点认为应该避免使用C++的class纯虚函数来定义API接口,并以COM作为反向教材进行批判,对此本人有些不同意见,记录在此与各位一同探讨。陈硕大牛认为C++的虚函数是以虚函数在class中定义的位置来确定其虚表的绑定位置,在class扩充的过程中,原有的虚函数位置不可以变动,因此带来了接口扩展的脆弱与僵硬。虚函数位置不可以随意变动是事实,但是给接口扩展造成问题不敢苟同。陈硕举出的linux接口的例子,个人认为完全不妥,完全没有必要使用百层的继承,有很多种技巧可以解决这个问题,比方可以写成这样:classLin 阅读全文
posted @ 2011-03-16 17:04 qiaojie 阅读(2552) 评论(2) 推荐(2) 编辑