MY IT

[STL] QUEUE

메롱씨티 배드맨 2006. 7. 15. 17:04

/* ------------- QUEUE EXAMPLE BEGIN ---------------- */

#include <iostream>
#include <queue>
#include <list>

 

using namespace std;

 

class TestQ
{
....private:
........int intData;
........string strData;
....public:
........void setData(int iData, string sData)
........{
............intData = iData;
............strData = sData;
........}


........int getIntData()
........{
............return intData;
........}


........string getStrData()
........{
............return strData;
........}
};

 

int main( void )
{
....queue<TestQ, list<TestQ> > testQueue;

 

....TestQ testQ1, testQ2, testQ3, testQ4;

 

....testQ1.setData(1, "AAA");
....testQ2.setData(2, "BBB");
....testQ3.setData(3, "CCC");
....testQ4.setData(4, "DDD");

 

....testQueue.push(testQ1);
....testQueue.push(testQ2);
....testQueue.push(testQ3);
....testQueue.push(testQ4);

 

....TestQ *testQ;

 

....cout << "QUEUE size : " << testQueue.size() << endl;

 

....testQ = &(testQueue.front());
....cout << "QUEUE front : < " << Q->getIntData() << ":" << Q->getStrData() << " > " << endl;

 

....testQ = &(testQueue.back());
....cout << "QUEUE back : < " << Q->getIntData() << ":" << Q->getStrData() << " > " << endl;

 

....cout << "QUEUE POP 2회 실행 " << endl;

 

....testQueue.pop();
....testQueue.pop();

 

....cout << "QUEUE size: " << testQueue.size() << endl;

 

....testQ = &(testQueue.front());
....cout << "QUEUE front: < " << Q->getIntData() << ":" << Q->getStrData() << ">" << endl;

 

....testQ = &(testQueue.back());
....cout << "QUEUE back: < " << Q->getIntData() << ":" << Q->getStrData() << ">" << endl;

 

....return 0;
}
/* ------------- QUEUE EXAMPLE END ------------------ */