为什么我不能这样做?
typedef boost::interprocess::unique_ptr<QueueList, QueueListDeletor> UQList;
typedef boost::intrusive::list<UQList> List; // Compiler (VS 2003) complains
QueueList 是一个派生自 public boost::intrusive::list_base_hook<>
使其成为侵入式链接列表的一部分的类。
我想使用 unique_ptr 能够在线程之间传递这个对象,并且当时只有 1 个单线程拥有这个对象的所有权。
编辑:错误:
错误 C2039: 'pointer' : is not a member of 'boost::intrusive::detail::default_list_hook' 请参阅 'boost::intrusive::detail::default_list_hook' 的声明 请参阅类模板实例化 'boost::intrusive ::list_impl' 正在使用 [ Config=boost::intrusive::listopt::value_traits,boost::intrusive::size_type::pack>::type,boost::intrusive::constant_time_size>::type>:: 编译大小类型,真>]
错误 C2039:“const_pointer”:不是“boost::intrusive::detail::default_list_hook”的成员,请参阅“boost::intrusive::detail::default_list_hook”的声明