读书人

类模版 内嵌类,该怎么处理

发布时间: 2012-03-24 14:00:46 作者: rapoo

类模版 内嵌类

C/C++ code
template <typename T>class ObjectContainer{public:    ObjectContainer():num(0){}    int push(const T& obj)    {        objectType<T> p(num++,obj);        objList.push_back(p);        return num;    }    T get(int i)    {        objectType<T> t(objList[i]);        return t.obj;    }private:    template<typename T>    struct objectType    {        objectType(int i,T o):objectID(i),obj(o){}        int objectID;        T obj;    };    int num;    std::list<objectType<T> > objList;};


编译的时候get函数出错,请各位指教啊

[解决办法]
vs2008编译无误
[解决办法]
在这个前面加上了
#include <list>

using namespace std;

用VS2005编译通过,用main函数创建一个模板对象成功。

楼主贴上错误原因吧,好让大家帮忙分析一下。
[解决办法]
你把你使用的代码也贴出来吧。很明显不是这里的问题!
[解决办法]
list 不支持用数字下标的方式进行访问.
把你的 list 改成 vector 就好了.

读书人网 >C++

热点推荐