#include <iostream>
using namespace std;
struct Node
{
float data; // данні.
Node *Next, *Prev; // покажчик на наступний та попередній елементи.
};
class List{
Node *Head, *Tail; // покажчик на перший та останній елементи списку
public:
List():Head(NULL),Tail(NULL){}; // конструктор створення пустого списку
~List(); // деструктор
void Add(float data); // додавання елементів до списку
};
List::~List()
{
while(Head) // доки головний елемент не NULL
{
Tail=Head->Next; // перевизначаємо хвіст
delete Head; // видаляємо голову
Head=Tail; //визначаємо нову голову
}
}
void List::Add(float data){
Node *temp = new Node; // стврення нового елементу
temp->Next = temp->Prev = NULL; // покажчик встановлено на наступний
temp->data = data; // запис даних
if (Head!=NULL){
temp->Prev = Tail;
Tail->Next = temp;
Tail = temp;
}
else{
temp->Prev = NULL;
Head=Tail=temp;
}
}
int main() {
List list;
list.Add(1.52);
list.Add(4.2424);
return 0;
}