[anfängerfrage c und oop Aufbau Struktur



  • Hallo c- und c++-community,

    ich habe noch eine weitere Frage zur "Objektorientierten" Programmierung mit C. Zu diesem Thema verwende ich unter anderem diese Quelle: http://www.mathematik.uni-ulm.de/sai/ws96/seminar/neher/node9.html.

    Hier ist folgende Struktur angegeben für eine Klassenaufbau:

    /*         (class.d)        */
    
          #ifndef CLASS_D
          #define CLASS_D
          #include <stdarg.h>
          #include <stdio.h>
    
          struct CLASS {
            size_t size;
            void * (*constructor) (void * _self , const int argnr,\
                                   va_list * _ap);
            void * (*destructor)  (void * _self);
            void * (*copy)        (const void * _self);
            void   (*cout)        (const void * _self);
          };
    
      struct Class_xyz {
        /* hier stehen die Komponenten von   struct CLASS 
           danach die Funktionen der Klasse Class_xyz */
      };
    
      struct CLASS_xyz {
         void * class;  /* unbedingt zuerst */
         .... (Daten)
      };
    

    Alos mit isr bewusst, dass ich am Ende eine Objekt von Class_xyz ableiten können soll, dass CLASS_xyz die Struktur der Objekte und CLASS enthält die Funktionen für die ich allgemein gültige Funktionen schreibe.

    Jetzt habe ich als jemand der noch nicht so viel mit diesem Thema zu tun hatte allerdings Schwierigkeiten mit dem wie ich meine structs CLASS_xyz und Class_xyz richtig befüllen muss, damit sie erstmal einfach die Funktionen von CLASS richtig unterstützen. Muss ich hier nur einen Verweis (Aggregation) auf die CLASS/ CLASS_xyz hinterlegen oder muss ich einfach nur die Struktur der Konstruktoren, Destruktoren, ... beachten?

    Vieleicht hat ja auch jemand ein kleines Beispiel, anhand dessen das ganze Konstrukt besser zu verstehen ist und auch mit der ein oder anderen tiefergehenden Bemerkung.

    Vielen Dank

    mirrowwinger


Log in to reply