template<class T>
void CCommList<T>::Clear()
{
std::list<T*>::iterator iter = infolist.begin();
for (; info_iter!=infolist.end(); info_iter++)
{
delete &*info_iter;
}
infolist.clear();
}
修改如下即可
typename std::list<T*>::iterator iter = infolist.begin();
编译器不知道list<T*>::iterator是代表一个类型
还是代表list<T*>类中的一个成员,叫做iterator。