Гуру С++ помогите разобраться с программой
Шаблон ...
#include
using namespace std;
template
class List
{
struct Node
{
T data;
Node *next;
Node(T d, Node *n = 0):data(d), next(n) {}
};
Node *head;
public:
List(Node *h = 0):head(h){}
~List();
bool isEmpty(); //ïðîâåðêà, ïóñò ëè ñïèñîê;
void insertAfter(Node *pre, T d); //âñòàâêà ïîñëå
void removeAfter(Node *pre); //óäàëåíèå ïîñëå
void pushFront(T d);//äîáàâëåíèå â íà÷àëî
T popFront();//óäàëåíèå èç íà÷àëà
void print();//ïå÷àòü
Node *search(T d);
void create(int k); //ñîçäàíèå ñïèñêà
void createFrom(List *L1, List *L2);
};
template
void List::insertAfter(Node *pre, T d)
{
if(!pre) return;
Node *newNode = new Node(d,0);
newNode->next = pre->next;
pre->next = newNode;
}
template
void List::removeAfter(Node *pre)
{
if (!pre || !pre->next) return;
Node *tmp = pre->next;
pre->next = pre->next->next;
delete tmp;
}
сама программа
#include "List.h"
#include
#include
using namespace std;
int main()
{
List *L1 = new List(NULL);
L1->create(4);
L1->print();
List *L2 = new List(NULL);
L2->create(3);
L2->print();
L2->removeAfter(); print();
system("PAUSE");
return EXIT_SUCCESS;
}