I have a class called node inside another class which is templated. Some of the methods of class Node returns Node pointer. This is an excerpt of how I implemented
To clarify, the compiler has no idea that myClass
is now or ever will be a type. Think of it this way:
template
class A
{
public:
typedef T value_type;
};
template
class B
{
public:
typename A::value_type x;
};
template <> A { public: static int value_type=10;}
You have to make the promise to the compiler that the type is a typename. It defaults to assuming that it is a value.