template<typename T1, typename T2>
class Bimap {
public:
class Data;
typedef Data* DataP;
typedef std::multimap<T1, DataP> T1Map;
typedef std::multimap<T2, DataP> T2Map;
class Data {
private:
Bimap& bimap;
T1Map::iterator it1;
/*...*/
};
};
Esto me da este error de compilación:C++: Error "... no se deriva del tipo ..."
error: type 'std::multimap<T1, Bimap<T1, T2>::Data*, std::less<_Key>, std::allocator<std::pair<const T1, Bimap<T1, T2>::Data*> > >' is not derived from type 'Bimap<T1, T2>::Data'
¿Qué significa eso? ¿Cuál es el problema aquí?
posible duplicado de [C++ Plantilla: 'no se deriva de tipo'] (http://stackoverflow.com/questions/2841757/c-template- is-not-derived-from-type) – Nathan