robot.h:11:20: error: expected identifier before numeric constant Queue SQ(10);Член инициализация переменная с не конструктором по умолчанию дает ошибке
struct Robot
{
string m_name; //robot name
Queue<string> SQ(10); //queue of services
int m_timer; //time til robot is done
string m_lastService; //most recent service
};
Я не понимаю, почему я получаю сообщение об ошибке на этом. Когда я забираю (10), он использовал конструктор по умолчанию и отлично работает. Вот класс Queue.
template <typename T>
class Queue : public AbstractQueue<T>
{
private:
T* m_array;
int m_front;
int m_back;
int m_capacity;
int m_size;
public:
Queue();
Queue(int max);
void setMax(int max);
bool isEmpty() const;
const T& front() const throw (Oops);
const T& back() const throw (Oops);
void enqueue(const T& x);
void dequeue();
void clear();
~Queue();
};
Я использовал другое объявление класса Queue, и она работала в основном, но по какой-то причине он не будет работать в структурах, вот что я объявил в главном
Queue<Robot> R(10);