C++ Coding Standards:模板和泛型

By Herb Sutter, Andrei Alexandrescu

树人译

模板和泛型

64.      明智地混合使用静态和动态多态。

比单纯的部分的总和更多:静态和动态多态是互补的。理解它们的权衡标准,在各自最好的情况下使用它们,并且混合使用它们来达到两全其美。

65.      有意地和显式地定制模板。

有意图要优于偶然性,显式要优于隐式:在编写模板的时候,要有意识和正确地提供定制点,而且要清楚地说明它们。在使用模板的时候,要知道模板希望你如何定制它来为你的类型所使用,并恰当地定制模板。

66.      不要特化函数模板。

模板特化只有在它能正确地实行时,它才是有益的:在扩展其他某个人的函数模板(包括:std::swap)的时候,尽量避免去特化它;作为替换,我们可以写一个函数模板的重载函数,并把它放到这个重载函数所用于的类型所在的名字空间中去。(参见:Item57)在你编写自己的函数模板的时候,避免鼓励函数模板自身的直接特化。

67.      不要盲目地编写非泛型代码。

依赖于抽象,而不是细节:使用最最泛型化和抽象的方法来实现功能的一小块。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值