Implementujte v jazyce C++ následující funkce nad seznamy hodnot typu int:
Funkce length vrací počet prvků v seznamu.
int length(List lst);
Funkce copy vrací kopii zadaného seznamu.
List copy(List lst);
Funkce append vrací seznam vytvořený spojením zadaných dvou seznamů.
List append(List lst1, List lst2);
Funkce reverse vrací seznam obsahující prvky zadaného seznamu v obráceném pořadí.
List reverse(List lst);
Funkce sum vrací součet hodnot v zadaném seznamu.
int sum(List lst);
Všechny funkce pracují s nemodifikovatelnými seznamy, reprezentovanými ukazatelem na první prvek. Prvek seznamu poskytuje metodu getValue(), která vrací hodnotu prvku, a metodu getNext(), která vrací zbytek seznamu.
Prázdný seznam je reprezentován konstantou null. Neprázdný seznam se vyrobí voláním operátoru new s konstruktorem
CList(int val, List nxt);
jehož parametry jsou hodnota prvního prvku seznamu a ukazatel na zbytek seznamu.
Zdrojové texty najdete v souboru seznamy.zip: