template <class T>class Array
{
protected :
T* data;
int size;
};
template<class T>class Stack : protected Array<T>
{
int top;
public:
Stack(){};
public:
void Push(T x) {data[++top] = x;}
};
Почему это говорит, что данные «не были объявлены в этой области» в Push
? Как я могу это исправить? Когда я удаляю каждый template<T>
, он работает нормально. Что-то не так в моем шаблоне?Нельзя ссылаться на элемент базового класса в классе производных шаблонов
Большое вам спасибо. Это полезно :))). СПАСИБО СНОВА –
@ DươngNguyênĐào Добро пожаловать в Stackoverflow :) Посмотрите, как сказать «Спасибо» на SO: [Что делать, если кто-то отвечает на мой вопрос?] (Http://stackoverflow.com/help/someone-answers) –