62 lines
1.1 KiB
C++
62 lines
1.1 KiB
C++
|
|
#include <stdio.h>
|
||
|
|
#include <string.h>
|
||
|
|
#include <iostream.h>
|
||
|
|
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";
|
||
|
|
}
|