I have a base class that has the following 2 operators:
void operator<<(const void* Buf);
void operator>>(void* Buf);
In 2 derived classes I have:
template <class T> void operator<<(const T Buf);
template <class T> void operator>>(T Buf);
The 2 operators need to operate in a completely different manner in each derived class and in a different manner in the base class. The template needs to support all primitive types.While the base class needs to support pointers to unknown sized buffers.
The problem is that that the template overrides the base class operator. Is there any way to solve this problem?