Subclassing from parametrized class
-
Hi, Assume, I have a parametrized class: template <class A> class CBase { public: CBase() {}; ~CBase() {}; } Can I subclass this file as the follows: template <class A> class CBaseSub : public CBase <A> { public: CBaseSub() {}; ~CBaseSub() {}; } Visual C++ 6.0 allows such subclassing but Rational Rose 2001 doesn't allow (it told me 'Cannot subclass from parameterized class'). What is true? Can I subclass from parameterized class? Sincerely Yours, RadioShark
-
Hi, Assume, I have a parametrized class: template <class A> class CBase { public: CBase() {}; ~CBase() {}; } Can I subclass this file as the follows: template <class A> class CBaseSub : public CBase <A> { public: CBaseSub() {}; ~CBaseSub() {}; } Visual C++ 6.0 allows such subclassing but Rational Rose 2001 doesn't allow (it told me 'Cannot subclass from parameterized class'). What is true? Can I subclass from parameterized class? Sincerely Yours, RadioShark
The code is perfectly correct. In fact, subclassing from class templates is a fairly common idiom in many situations. UMS is wrong, God knows why. Joaquín M López Muñoz Telefónica, Investigación y Desarrollo