我正在尝试有效地将大向量传递给对象构造函数,然后清空它并最终重用它。我写了这个解决方案:
template<typename T>
struct vect_obj{
vect_obj(vector<T> &&v) : v(move(v)) {}
vector<T> v;
};
int main()
{
vector<int> v(10,1);
//v.size()=10
vect_obj<int> v_o (move(v));
//v.size()=0
v.push_back(10);
//v.size()=1
}
但是: