【发布时间】:2013-05-18 20:49:54
【问题描述】:
我有这两个简单的代码:
void f(){
std::map<int,std::unique_ptr<int>> map_;
std::unique_ptr<int> p;
map_[42] = std::move(p);
}
确实构建
struct test_s{
int toto;
std::unique_ptr<int> tata;
};
void f(){
std::map<int,test_s> map_;
test_s p;
map_[42] = std::move(p);
}
无法构建,因为在视觉 ctp120 上禁止复制 它确实建立在带有 Clang 4.2 的 MAC 上
有人知道我应该改变什么来完成这项工作吗?
【问题讨论】:
标签: visual-studio-2012 c++11 clang move-semantics unique-ptr