Liste in C++

From HaskellWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Un cod pentru liste in C++, doar ca exemplu minimal, si spre a se face comparatii intre limbaje.

#include <iostream>
#include <stdio.h>

using namespace std;

template <class E>
class Link
{
public: E element;
public: Link <E>  * next;


// Singly Linked Link node
// Value for this node
// Pointer to next node in Link
// Constructors

Link()
  { next = this; }


Link(E it, Link <E> * nextval)
  { element = it; next = nextval; }

Link(Link <E>  * nextval) { next = nextval; }

Link <E> * get_next() { return next; }

Link <E>  * setNext(Link <E> * nextval)
  { return next = nextval; }

E get_element() { return element; }

E setElement(E it) { return element = it; }

}; // class Link

int main()
{   cout << "Test Liste"<<endl;
    Link<int> Vida;
    Link<int> Lista1 (1, &Vida );
    Link<int> Lista2 (2, &Lista1 );
    cout << Lista1.element;
    cout <<endl;
    cout << Lista2.element;
    cout << Lista2.next->element;
    cout <<endl;

    cout << "Test Liste"<<endl;
    Link<char> VidaC;
    Link<char> Lista3 ('a', &VidaC );
    Link<char> Lista4 ('b', &Lista3 );
    cout << Lista3.element;
    cout <<endl;
    cout << Lista4.element;
    cout << Lista4.get_next()->element;
    getchar();
    return 0;


}

... va urma