У меня есть этот код для реализации Queue на основе Node, и я должен расширять абстрактный класс QueueInterface.Ошибка при расширении шаблона абстрактного класса
template<typename T>
struct QueueInterface {
public:
virtual ~QueueInterface(){};
virtual bool isEmpty() const = 0;
virtual void enqueue(const T value) = 0;
virtual void dequeue() throw(PreconditionViolationException) = 0;
virtual T peekFront() const throw(PreconditionViolationException) = 0;
};
template<typename T>
struct Queue : QueueInterface {
Queue();
~Queue();
bool isEmpty() const;
void enqueue(const T value);
void dequeue() throw(PreconditionViolationException);
T peekFront() const throw(PreconditionViolationException);
private:
Node<T>* front;
Node<T>* back;
};
я получаю ошибку expected class name before '{' token
хотя я включал заголовочный файл QueueInterface. Почему это происходит?
Скорее всего, опечатка в 'Node.h' или' QueueInterface.h'. – NathanOliver
Нет. Я проверил. Также почему опечатка в 'Node.h' забрасывает эту ошибку – pyro97
Это будет праздничный праздник, не зная содержимого других файлов. Можете ли вы уменьшить их все как можно больше, все еще получая ошибку? TIA (P.S: мои деньги пропали без вести, в конце объявления класса) – Borgleader