以下代码会抛出一个警告:
警告 C4239:使用了非标准扩展:'argument':从 'std::unique_ptr<_Ty>' 转换为 'std::unique_ptr<_Ty> &'
我想知道应该如何妥善处理这种情况。
警告 C4239:使用了非标准扩展:'argument':从 'std::unique_ptr<_Ty>' 转换为 'std::unique_ptr<_Ty> &'
std::unique_ptr<T> foo() { return std::unique_ptr<T>( new T ); }
std::unique_ptr<T> myVar;
myVar.swap(foo());
我想知道应该如何妥善处理这种情况。