我有某种类型的对象,例如,std::vector<int> v;
现在,比如说,我想验证它是否v
释放了它的所有内部内存。
在 C++11shrink_to_fit()
方法之前,推荐/保证的方法是swap()
使用相同类型的空std::vector<>
。
但是,我不想指定对象的类型。我可以decltype
用来指定类型,所以我想写这样的东西:
std::vector<int> v;
// use v....
v.swap(decltype(v)()); // Create a temporary of same type as v and swap with it.
^^
但是,上面的代码不起作用。我似乎无法decltype(v)
用空的 ctor 创建一个临时类型(在这种情况下)。
是否有其他语法来创建这样的临时文件?