几年后,日常 C++ 开发会是什么样子? C++0x 的哪些功能将最大程度地改变 C++ 开发?
我应该按照什么顺序集中学习这些新功能?
我个人认为移动语义(以及一般的右值引用)是最重要的变化,与线程/锁/原子相同。其他一切或多或少都是语法的简化或常见第三方解决方案的标准化——当我们需要 lambda 并且我们有大量的正则表达式库时,我们可以编写函子。即使缺乏原子操作,也有一些解决方案,但没有移动构造函数/移动赋值运算符。
能够移动物体改变了我对语言的整体认知。尽管我们已经有了 RVO 和交换到临时的技巧来模仿其中的一些,但很难想象当这成为日常生活的一部分时,生活会发生怎样的变化。这不仅仅是ofstream("log.txt") << "Hi!";
,或者更快的 STL 算法,它是一种在函数之间传递数据的全新方式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)