Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2014, 09:42   #1
Студ
Пользователь
 
Регистрация: 20.03.2014
Сообщений: 35
По умолчанию шаблонные функции: ошибка в программе

Разбираю программу по спискам:

Код:
#include <iostream>
using namespace std;

template <class Qtype> class RingQueue {
protected:
int SIZE;                                          //размер очереди
int head, tail;                                    // индекс вершины и хвоста очереди

public:
RingQueue(int S):SIZE(S), head(0), tail(0) {
Qtype* queue;   
queue = new Qtype[SIZE]; 

}
void enqueue(Qtype); // помещает в объект в очередь
Qtype dequeue(); // извлекает объект из очереди
void print();
};

// Помещение значения в очередь
template <class Qtype> void RingQueue<Qtype>::enqueue(Qtype num)
{
if (tail+1==head || (tail+1==SIZE && !head)) {
cout << "Full" ;
return;
}
tail++;
if (tail==SIZE)
  tail = 0; // замыкание цикла*/
queue<Qtype>[tail] = num;
}

// Удаление значения из очереди
template <class Qtype> Qtype RingQueue<Qtype>::dequeue()
{
if (head == tail) {
cout << "Pusto";
return 0; // очередь пуста или какая-то иная ошибка
}
head++;
if(head==SIZE) head = 0; // замыкание цикла
return queue [head];
}

template <class Qtype> void RingQueue<Qtype>::print()
{   
head++;
cout<<queue[head]<<endl;
if (head==tail) head=0;
}

int main()
{
int S=100;
RingQueue(S)<char> q2;

int i;
for(i=1; i<10; i++){// dobavka
q2.enqueue(i-1+'A');
}
cout<<"Zapolneno!"<<endl;
cout<<"Output on screen: "<<endl;

for(i=1; i<10; i++){// simple output on screen
    q2.print();
    }
cout<<endl;

cout <<"Izvlechem 1 element "<<i<<" "<< q2.dequeue() <<endl;

getchar();
}
Компилятор Выдает следующую ошибку (строка выделена красным): error: expected unqualified-id before '[' token. не могу понять в чем проблема, вроде указано как надо?
Студ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Указатель и шаблонные функции kineziz Общие вопросы C/C++ 4 16.07.2012 14:59
Шаблонные функции c++, кастование pwturbenn Общие вопросы C/C++ 5 07.01.2011 22:18
шаблонные функции, как помочь компилятору выбрать определенную. Пепел Феникса Общие вопросы C/C++ 19 08.12.2010 13:47
Шаблонные функции в классе Impuls1989 Общие вопросы C/C++ 5 20.09.2010 09:04
шаблонные строковые функции MrKarapuz Общие вопросы C/C++ 7 09.11.2009 15:07