ошибка C2143: синтаксическая ошибка: отсутствует ',' before '<' при использовании шаблонных классов - PullRequest
0 голосов
/ 25 марта 2020

Я унаследовал стек и очередь для моих шаблонных классов Stack и Queue.


template<class T>
class Stack : public stack<T> {

// Мой код здесь};

template<class T>
class Queue : public queue<T> {

// Мой код здесь

};

Но когда я пытаюсь скомпилировать этот код в Visual Studio 2014, я получаю эту ошибку для обеих строк, где я использую

:public stack<T>{
:public queue<T>{

Если я удалите, затем скомпилируйте без ошибок.

Я пытался найти решения в Интернете, но ни одно из них не помогло мне.

1 Ответ

0 голосов
/ 26 марта 2020

Таким образом, ошибка произошла из-за отсутствия std :: перед использованием стека и очереди.

Класс Stack: publi c std :: stack {class Queue: publi c std :: queue {

, потому что я не написал "using namespace std;" в моем заголовочном файле, поэтому я должен упомянуть std :: перед каждой новой структурой из встроенной библиотеки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...