Max M. schrieb:
> C++:
>
> Ich habe einen void pointer, indem ich ein Objekt erzeugt habe. Z.B:
>
>
1 | > void * p = new MeinObjekt;
|
2 | >
|
>
> Was ich bis jetzt herausfinden konnte ist, dass ich diesen vor dem
> delete casten muss. Das gelingt mir aber nicht, z.B:
>
>
1 | > delete (*MeinObjekt) p;
|
2 | >
|
>
> Wie mache ich das richtig? Ich benutze einen void Zeiger, weil erst zur
> Laufzeit ermittelt wird, was da mit new erzeugt wird.
Wenn du wirklich nicht weißt, was erzeugt wird (und die erzeugten
Objekte auch nicht alle über eine gemeinsame Basisklasse verfügen), wird
dir wohl nichts anderes übrig bleiben, als irgendwo zu speichern, was es
ist.
Als C-Programmierer fällt mir dazu als ersten ein enum ein, aber
vermutlich hat C++ da inzwischen auch schon irgend eine Alternative.