1 /* 2 * intlist.h 3 * 4 * Beispielprogramm eingebettete Klassen. 5 * 6 * Autor: H.Drachenfels 7 * Erstellt am: 10.2.2021 8 */
9 #ifndef INTLIST_H
10 #define INTLIST_H
11
12 class intlist final
13 {
14 private:
15 class element;
16 element *head;
17
18 public:
19 intlist();
20 ~intlist();
21 // Entity-Klasse ohne Kopier- und Move-Semantik
22 intlist(const intlist&) = delete;
23 intlist& operator=(const intlist&) = delete;
24 intlist(intlist&&) = delete;
25 intlist& operator=(intlist&&) = delete;
26
27 intlist& insert(int);
28
29 class iterator final
30 {
31 private:
32 element *current;
33 explicit iterator(element*);
34 public:
35 bool operator!=(const iterator&) const;
36 int& operator*() const;
37 iterator& operator++();
38
39 friend class intlist;
40 };
41
42 iterator begin();
43 iterator end();
44 };
45
46 #endif
47