我有一个存储在列表中的对象列表,这些对象代表线程使用的只读内存块。每个块对象都有一个原子作为参考计数,非常简单。
我有一个问题,std::list<Type>
显然需要Type
?的副本构造函数,并且将std::atomic
作为Type
的成员会删除默认的副本构造函数块对象的类。我敢肯定,列表不允许在内存中的任何地方复制或移动元素,所以为什么它需要那个构造函数?
任何人,问题,我怎么会有包含std::atomic
的对象的列表?原子无法更改地址,我对复制或移动地址不感兴趣,因此看来我需要使用std::list
以外的其他地址吗?