我正在阅读第4.2.3节初始化容器,C ++第二版浏览。
它说:
被复制删除,但不能保证被删除。我在这里想念什么吗?Vector read(istream& is) { Vector v; for (double d; is>>d;) v.push_back(d); return v; }
...在第5.2.2节中说明了为
Vector
提供移动构造函数的方法,以便从read()
返回可能大量的数据很便宜。Vector v = read(cin); // no copy of Vector elements here
是否保证上面的表达式将被复制删除(在C ++ 17中?我认为返回中的
v
是一个左值和一个局部变量,因此可以
我正在阅读第4.2.3节“初始化容器”,C ++第二版。它说:Vector read(istream&is){向量v; for(double d; is >> d;)v.push_back(d); ...
是否保证上面的表达式将被复制删除(在C ++ 17中?