从VC6到VC7.1后,遇到的C2146编译问题,谁能解决?

Jans 2007-11-23 04:21:27
代码如下:
class CObjectPool
{
public:
class CObjectPoolItem
{
public:
CObjectPoolItem()
{
m_lObjectID = -1;
m_strType = _T("");
m_pObject = NULL;
}
long m_lObjectID;
CString m_strType;
T* m_pObject;
};
public:
typename std::list<CObjectPoolItem> ObjectPoolItemList;
typename ObjectPoolItemList::iterator ObjectPoolItemListIter;
CObjectPool(){}
virtual ~CObjectPool();
T* GetObjectInPool(long lObjectID){}
T* GetObjectInPool(const CString& strType){}
void AddObject(const CString& strType,T* pDevice,long lObjectID){}
ObjectPoolItemList m_ObjectPool;
};
...全文
56 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Jans 2007-11-23
自己解决了,想骂一声,什么烂玩意儿,如果这就是C++标准,我想说:“去他妈的C++标准!”
他太妈的啰嗦了。

template<typename T>
class CObjectPool
{
public:
class CObjectPoolItem
{
public:
CObjectPoolItem()
{
m_lObjectID = -1;
m_strType = _T("");
m_pObject = NULL;
}
long m_lObjectID;
char* m_strType;
typename T* m_pObject;
};
public:
typename std::list <CObjectPoolItem> ObjectPoolItemList;
typename std::list<typename CObjectPool<T>::ObjectPoolItemList> ObjectPoolItemListIter;
CObjectPool(){}
virtual ~CObjectPool();
T* GetObjectInPool(long lObjectID){}
T* GetObjectInPool(const char*& strType){}
void AddObject(const char*& strType,T* pDevice,long lObjectID){}
typename CObjectPool<T>::ObjectPoolItemList m_ObjectPool;
};
  • 打赏
  • 举报
回复
Jans 2007-11-23
template<typename T>
顶上加上
  • 打赏
  • 举报
回复
sms88 2007-11-23
不知道T是什么
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ 语言
加入

6.2w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
申请成为版主
帖子事件
创建了帖子
2007-11-23 04:21
社区公告
暂无公告