NRVO优化测试。
This commit is contained in:
4
Languages/cpp/关于语法疑问.txt
Normal file
4
Languages/cpp/关于语法疑问.txt
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
【1】函数直接返回一个栈上面的对象,是会调用移动构造还是复制构造??
|
||||||
|
实际测试=>
|
||||||
|
(1)在MSVC中,不开优化时调用移动构造,开启优化时,编译器直接在返回值位置构造对象,避免拷贝/移动。
|
||||||
|
称为NRVO优化 [NRVO 是 Named Return Value Optimization 的缩写,意思是 "命名返回值优化"。]。因为在函数中,返回的是一个有名字的局部变量。
|
||||||
Reference in New Issue
Block a user