1. Пользуйтесь тегами кода. - [code] ... [/code] 2. Точно указывайте язык, название и версию компилятора (интерпретатора). 3. Название темы должно быть информативным. В описании темы указываем язык!!!
Нужен очень шаблон класса "очередь" на С++, с простыми операциями, такими как вставить новый элемент в очередь, взять вершину очереди, проверка на пустоту очереди, размер очереди, вывод элементов и т.п. Может у кого есть что-нить подобное?
С шаблонами и классами работаю первый раз. Попытался написать очередь через массив. Не понимаю, почему функции showHead () и showTail () работают не так… И вообще, если кто может проверьте правильность реализации… Компилятор Dev-C++.
/*
Шаблон очереди и модуль тест. Язык реализации: С++
*/
#include <iostream>
// размер массива (по умолчанию) под очередь #define N 10
using namespace std;
////////////////////////////////////////////////////////// // Начало шаблона //////////////////////////////////////////////////////////
template <class T> class queue {
private :
T *q; // указатель на массив int begin; // первый элемент очереди int end; // последний элемент очереди
public :
queue (void); // конструктор ~queue (); // деструктор bool isEmpty (); // проверка на пустоту T size (); // количество элементов в очереди T pop (void); // взятие элемента void push (T i); // добавление элемента T showHead (); // посмотреть первый элемент T showTail (); // посмотреть последний элемент T makeEmpty (); // очистить очередь };
// конструктор template <class T> queue <T> :: queue (void) { if (!(q = new T[N])) { cout << "Can't create array, because hav't free memory!\n"; return; } begin = end = 0; cout << "Initialization ok.\n"; }
////////////////////////////////////////////////////////// // Конец модуль теста и программы //////////////////////////////////////////////////////////
--------------------
Я не боюсь казаться смешным. Хмм..это не каждый может себе позволить... Чтобы избежать критики, ничего не делайте, ничего не говорите, будьте никем...