Var*_*gas 6 c++ containers stl noncopyable
有没有办法使用STL包含不可复制的元素?
这样的事情:
class noncopyable
{
noncopyable(noncopyable&);
const noncopyable& operator=(noncopyable&);
public:
noncopyable(){};
};
int main()
{
list<noncopyable> MyList; //error C2248: 'noncopyable::noncopyable' : cannot access private member declared in class 'noncopyable'
}
Run Code Online (Sandbox Code Playgroud)
Dav*_*ley 16
不,不可复制的元素不能在C++容器类中.
根据标准23.1第3段,"存储在这些组件中的物体类型必须符合CopyConstructible
类型(20.1.3)的要求,以及Assignable
类型的附加要求."
Jar*_*Par 15
一种选择是创建指向元素的指针列表(最好是shared_ptr).这不是你想要的,但它会完成工作.
归档时间: |
|
查看次数: |
3021 次 |
最近记录: |