以下のようなテンプレートクラスがあります
template <class Key, class Object>
class TObjectRegistery
{
public:
typedef map<const Key, Object*> ObjectMap;
void AddObject(Object *obj){
objectMap_[obj.code()] = obj;
}
private:
ObjectMap objectMap_;
}
の外部で反復を実行しTFactory
たいので、2つのメンバー関数をクラスに追加したいと思います。
ObjectMap::iterator xbegin(){
return objectMap_.begin();
}
しかし、私は私が行方不明であるというエラーを受け取ります; undefine ObjectMap::iteratorのようなxbeginの前
"missing ';' before identifier 'xbegin'"
なぜこれが起こるのですか?どうすれば修正できますか?クラス外で反復を行うためのこの良い方法があれば?