c – 任何初始化unique_ptr向量的方法?
例如
struct A { vector<unique_ptr<int>> m_vector { make_unique<int>(1),make_unique<int>(2) }; }; 我尝试上面但失败了.有什么方法可以初始化unique_ptr的向量? 解决方法
您无法从初始化列表移动,因为元素是const. §8.5.4[dcl.init.list] / p5:
您只能复制,但不能复制unique_ptr,因为它只是移动的. 在构造向量之后,你必须使用push_back或emplace_back等来填充向量. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |