Konstruktor Problem



  • otze schrieb:

    es gibt in C++ keinen leeren Datentyp. du hast auch nicht die möglichkeit eine variable nicht zu setzen, da immer zuerst der default-ctor aufgerufen wird.

    Das ist das Problem. Deshalb habe ich angewoehnt, grundsaetzlich in solchen Faellen Memberklassen nur als Pointer zu einer Instanz der Klasse auftauchen zu lassen, die im Default-Konsturktor auf NULL gesetzt wird und ggf. waerend der Lebenszeit des Objects durch einen new-Operator der Memberklasse mit "Leben" gefuellt wird.



  • MBCS-CITP schrieb:

    ...und ggf. waerend der Lebenszeit des Objects durch einen new-Operator der Memberklasse mit "Leben" gefuellt wird.

    Womit Du dann völlig am Sinn eines Konstruktors vorbeischießt. Zumal Du automatic storage und alle Vorteile die sie mitbringt einfach in den Wind schießt. Ich hoffe, Du willst nicht sagen, dass die Performance einer Klasse "Person" eine wesentliche Rolle spielt... falls sie das jemals tun sollte, kann man hier immernoch später optimieren und solange die einfache und sichere Variante benutzen.

    Durch die 0-Zeiger handelst Du dir dann auch noch eine mehrwertige Logik ein, die es speziell zu handlen gilt. Wenn man sich schon für so triviale Klassen dermaßen den Kopf zerbrechen muss, na dann gute Nacht.

    Zum eigentlichen Problem: Ist der Zuweisungsoperator nicht überflüssig? Der Compiler-generierte sollte doch (zumindest noch) alles richtig machen...


Anmelden zum Antworten