C/C++ C++ 11 std::move()

{

0. C++ 标准库使用比如vector::push_back 等这类函数时,会对参数的对象进行复制,连数据也会复制.这就会造成对象内存的额外创建, 本来原意 是想把参数push_back进去就行了,通    过std::move,可以避免不必要的拷贝操作。


  1. std::move是将对象的状态或者所有权从一个对象转移到另一个对象,只是转移,没有内存的搬迁或者内存拷贝所以可以提高利用效率,改善性能.。


  2. 对指针类型的标准库对象并不需要这么做.

}

c++

相关推荐