Я начинаю с C++, и я не могу понять это. У меня есть три класса и я пытаюсь реализовать очередь. (Не имеет значения, если он работает или нет сейчас, я просто нужно исправить эту ошибку)Ожидаемый неквалифицированный идентификатор перед ошибкой маркера
#include <cstdlib>
#include <iostream>
#include "queue.h"
using namespace std;
int main(int argc, char** argv) {
queue fronta();
queue.add(10); // <- expected unqualified-id before ‘.’ token
}
queue.h:
#ifndef QUEUE_H
#define QUEUE_H
#include "queueItem.h"
class queue {
private:
queueItem* first;
queueItem* last;
public:
queue();
void add(int number);
int get(void);
bool isEmpty();
};
#endif /* QUEUE_H */
queueItem.h:
#ifndef QUEUEITEM_H
#define QUEUEITEM_H
class queueItem{
private:
int value;
queueItem* next;
public:
queueItem(int value);
int getValue();
queueItem* getNext();
void setNext(queueItem* next);
};
#endif /* QUEUEITEM_H */
С что я googled, это обычно связано с посторонней точкой с запятой, скобкой или таковой. Я ничего не нашел своего рода, хотя
Спасибо за помощь
ohmygosh. какой мозговой шок. Извините за беспокойство. –
Это ** не ** самый неприятный синтаксический разбор. Это просто и недвусмысленно объявление функции, как 'int f();'. Самый неприятный анализ включает в себя создание временного аргумента функции; см. http://en.wikipedia.org/wiki/Most_vexing_parse. –
@Pete Спасибо за исправление. – us2012