-
测试一下live writer,请无视 - [Diary]
2010-01-25
测试
测试代码框
#include <iostream>#include <assert.h>using namespace std;
template <class Type>
struct Node{Type data;
Node * next;
};
template <class Type,class Node = Node<Type>>
class Queue{private:Node * _front;
Node * _rear;
int _size;public:Queue()
{_front = new Node;_front->next = NULL;
_rear = _front;
_size = 0;
}
~Queue()
{Node * pCur;
while(_front != NULL){pCur = _front;
_front = _front->next;
delete pCur;}
}
void push(const Type & data)
{Node *newNode = new Node;newNode->data = data;
newNode->next = NULL;
_rear->next = newNode;
_rear = newNode;
_size++;
}
void pop(){assert(_front != _rear);
Node * pCur = _front;
_front = _front->next;
delete pCur;_size--;
}
Type & front()
{assert(_front != _rear);
return _front->next->data;}
int size(){return _size;}
};
int main(){_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
Queue<int> iQueue;iQueue.push(1);
iQueue.push(2);
iQueue.push(3);
cout <<iQueue.size() <<endl;
cout <<iQueue.front() <<endl;
iQueue.pop();
cout <<iQueue.front() <<endl;
system("pause");return 0;}







