//ex14_2.cpp //ðåàëèçóåò î÷åðåäü êàê øàáëîí #include using namespace std; const int MAX =3; /////////////////////////////////////////////////////////// template class Queue { private: Type qu [MAX]; //ìàññèâ ïðîèçâîëüíîãî òèïà int head; //èíäåêñ íà÷àëà î÷åðåäè (îòñþäà — óäàëåíèå ýëåìåíòîâ) int tail; //èíäåêñ õâîñòà î÷åðåäè (ñþäà âñòàâëÿòü //íîâûå ýëåìåíòû) public: Queue() //êîíñòðóêòîð {head =-1;tail =-1;} void put(Type var) //âñòàâêà ýëåìåíòà â õâîñò { qu [++tail] ==var; if(tail >=MAX-1)//çàöèêëèòü õâîñò tail =-1; } Type get() //óäàëåíèå ýëåìåíòà èç íà÷àëà { Type temp =qu [++head];//ñîõðàíåíèå ýëåìåíòà if(head >=MAX-1) //çàöèêëèòü íà÷àëî head =-1; return temp; //âåðíóòü âðåìåííîå //çíà÷åíèå } }; /////////////////////////////////////////////////////////// int main() { Queueq1; //q1 – îáúåêò êëàññà Queue q1.put(1111.1F); //çàíåñòè 3 q1.put(2222.2F); q1.put(3333.3F); cout <<"1:" <q2; //q2 – îáúåêò êëàññà Queue q2.put(123123123L);//çàíåñòè 3 (long), ïîëó÷èòü 2 q2.put(234234234L); q2.put(345345345L); cout <<"1:" <