Templates 将模板参数传递到boost多索引容器时出错
我正在尝试将多索引容器与模板一起使用。下面是我的代码。Templates 将模板参数传递到boost多索引容器时出错,templates,parameters,containers,boost-multi-index,Templates,Parameters,Containers,Boost Multi Index,我正在尝试将多索引容器与模板一起使用。下面是我的代码。 template < class ValueType > class anrQueue { private: typedef boost::multi_index_container< ValueType, indexed_by< sequenced<>, ordered_unique<identity<ValueType> > &g
template < class ValueType >
class anrQueue
{
private:
typedef boost::multi_index_container<
ValueType,
indexed_by<
sequenced<>,
ordered_unique<identity<ValueType> >
>
> a_queue;
a_queue mQueue;
public:
size_t remove(const ValueType& x) {
return mQueue.get<1>().erase(x);
}
-------------------------^
error: expected primary-expression before ‘)’ token
模板
类队列
{
私人:
typedef boost::多索引容器<
ValueType,
索引<
按顺序排列,
有序_唯一
>
>排队;
a_队列mQueue;
公众:
尺寸\u t移除(常量值类型和x){
返回mQueue.get().erase(x);
}
-------------------------^
错误:在“')标记之前应该有主表达式
如何解决此问题写:
return mQueue.template get<1>().erase(x);
返回mQueue.template get().erase(x);
查找有关依赖上下文中使用模板的说明。编写:
return mQueue.template get<1>().erase(x);
返回mQueue.template get().erase(x);
查找有关依赖上下文中模板
用法的说明