当前位置:  开发笔记 > 编程语言 > 正文

为什么提升如此严重?

如何解决《为什么提升如此严重?》经验,为你挑选了1个好方法。

有很多地方在我看到一个模板化的课程,并且不禁想到为什么编写它的人使用了模板.

例如,互斥类(es).所有互斥锁概念都是作为模板实现的,人们可以简单地创建一些基类或抽象类,其接口与概念相匹配.

在回答之后编辑:我考虑过虚拟功能的成本,但是为了更好地理解,有时值得给予很少的性能损失吗?我的意思是有时候(尤其是使用boost)很难理解模板化代码并解密编译器错误,这是因为滥用模板.



1> Eclipse..:

模板可以在编译时进行高度优化,而无需虚拟功能.许多模板技巧可以被认为是编译时多态.由于您在编译时知道您想要哪些行为,因此每次使用该类时,为什么要为虚拟函数调用付费.作为奖励,很多模板化代码可以很容易地内联,甚至消除最基本的函数调用开销.

此外,C++中的模板非常强大和灵活 - 它们本身已被证明是一种图灵完整的语言.使用运行时多态性需要更多工作的模板有一些容易做的事情.

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有