读书人

关于迭代器作为参数给函数编译不过有关

发布时间: 2013-09-05 16:02:07 作者: rapoo

关于迭代器作为参数给函数编译不过问题
不好意思分不多了,麻烦看下

#include <list>

template<typename T>
class MyQueue
{
protected:
typedef std::list<T> LstData;
LstData m_lstData;

public:
MyQueue(){}
virtual ~MyQueue(){ m_lstData.clear(); };

protected:
bool Find(T &data, LstData::iterator iter)
{
for( ; iter != m_lstData.end(); iter++ )
{
if( data.x == iter->x)
{
return true;
}
}
return false;

[解决办法]
试试一下

template<typename T>
class MyQueue
{
protected:
typedef std::list<T> LstData;
LstData m_lstData;
typename typedef LstData::iterator ListIteror;
public:
MyQueue(){}
virtual ~MyQueue(){ m_lstData.clear(); };

protected:
bool Find(T &data, ListIteror iter)
{
for( ; iter != m_lstData.end(); iter++ )
{
if( data.x == iter->x)
{
return true;
}
}
return false;
}
};


[解决办法]
typename typedef std::list<T> LstData;

读书人网 >C++

热点推荐