如何理解这些方式可以消除大多数对显式std :: move的需求?有人可以通过一些简单的例子弄清楚吗?

问题描述 投票:0回答:1

如何理解这些方式(包括不使变量的作用域不必要地变大,编写返回值的短函数,返回局部变量,可以消除对显式std :: move的大多数需要?

有人可以通过一些简单的例子弄清楚吗?我是C ++的新手。对于这个问题的任何提示,我将不胜感激。为了方便起见,我在下面发布了所有引号。

当源是右值(例如,返回处理或函数结果中的值)时,隐式完成移动,因此不要在这些情况下,通过显式编写move毫无意义地使代码复杂化。而是编写返回值的简短函数,并且功能的返回,而呼叫者接受返回自然优化。一般而言,请遵循本文档中的指南(包括不要使变量的作用域不必要地变大,编写简短的函数返回值,返回局部变量)有助于消除大多数需要显式std :: move。

c++ c++11 move
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.