void main() { // Tests Canonical Functions DoubleLinkedList<int> alist; //ctor DoubleLinkedList<int> blist(alist); //copy ctor DoubleLinkedList<int> clist; clist = blist; //= operator // Tests Mutators std::cout << alist.getHead() << std::endl; std::cout << alist.getTail() << std::endl; // Tests Methods TestAppend(alist); TestFirstAndLast(alist); TestPrepend(alist); TestPurge(alist); TestInsertBefore(); TestInsertAfter(); TestExtract(); std::cout << "\n********** List Integrity **********" << std::endl; alist.PrintForwards(); alist.PrintBackwards(); _asm nop;//added as a break point location; }
void main() { _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF); // Tests Canonical Functions DoubleLinkedList<int> alist; //ctor DoubleLinkedList<int> blist(alist); //copy ctor DoubleLinkedList<int> clist; clist = blist; //= operator // Tests Mutators std::cout << alist.getHead() << std::endl; std::cout << alist.getTail() << std::endl; // Tests Methods TestAppend(alist); TestFirstAndLast(alist); TestPrepend(alist); TestPurge(alist); TestInsertBefore(); TestInsertAfter(); TestExtract(); std::cout << "\n********** List Integrity **********" << std::endl; alist.PrintForwards(); alist.PrintBackwards(); }
void main() { // Tests Canonical Functions DoubleLinkedList<int> alist; //ctor DoubleLinkedList<int> blist(alist); //copy ctor DoubleLinkedList<int> clist; clist = blist; //= operator // Tests Mutators std::cout << alist.getHead() << std::endl; std::cout << alist.getTail() << std::endl; // Tests Methods TestAppend(alist); TestFirstAndLast(alist); TestPrepend(alist); TestPurge(alist); TestInsertBefore(); TestInsertAfter(); TestExtract(); std::cout << "\n********** List Integrity **********" << std::endl; alist.PrintForwards(); alist.PrintBackwards(); //The memory leak tool detects leaks because alist isn't being destroyed before it is called //by calling the destructor or the following line of code, the list is destroyed and //there are no leaks: //alist.Purge(); _CrtDumpMemoryLeaks(); }