摘要:
之前有文章介绍过临时对象和返回值优化RVO方面的问题。见此处。在C++中,返回对象这一点经常被诟病,因为这个地方的效率比较低,需要进行很多的操作,生成一些临时对象,如果对象比较大的会就会比较耗时。但是在编译器实现的时候,经常是对返回对象的情况进行优化,也就是进行返回值优化 。在g++中,这个是默认已经进行了优化。以前我希望看看到底C++怎么操作的,但是无法看到,就是因为G++进行了默认的返回值优化RVO。今天在晚上发现可以有一中方法来禁止这个RVO,可以参考这儿。具体来说就是在编译的时候,加上-fno-elide-constructors这个选项,即:g++ -o rvo_test rvo_t 阅读全文
posted @ 2012-07-21 11:23
Mr.Rico
阅读(2344)
评论(0)
推荐(2)

浙公网安备 33010602011771号