从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;
};
...全文
117 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
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是什么

65,187

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧