#include #include #include class daten { public: daten() { count++; if (pFirst == 0) { pFirst= this; } else { for (daten *pDdd = pFirst; pDdd->pNext; pDdd = pDdd->pNext) { } pDdd->pNext=this; } pNext=0; } static daten *first() { return pFirst; } daten *next() { return pNext; } void init() { a = 0; strcpy(name,""); } void increment(char *nstr) { a++; strcpy(name, nstr); } void decrement() { a--; } int wert() { return a; } char *nnn() { return name; } protected: static daten *pFirst; daten *pNext; static int count; int a; char name[50]; }; daten *daten::pFirst = 0; int daten::count = 0; int main(void) { daten *pDdd; pDdd = new daten(); if (pDdd == 0) {puts("OUT OF MEM");} pDdd->init(); pDdd->increment("eins"); pDdd = new daten(); if (pDdd == 0) {puts("OUT OF MEM");} pDdd-> init(); pDdd->increment("Zwei"); pDdd->increment("Zwei"); pDdd = daten::first(); cout << "Hallo " << pDdd->wert() << " " << pDdd->nnn() << "\n"; pDdd = pDdd->next(); cout << "Hallo " << pDdd->wert() << " " << pDdd->nnn() << "\n"; }