Warum typedef struct?



  • Warum findet man in vielen Headerdateien Sachen wie

    typedef struct tagRGBTRIPLE {
            BYTE    rgbtBlue;
            BYTE    rgbtGreen;
            BYTE    rgbtRed;
    } RGBTRIPLE;
    

    (mal ein simples Beispiel aus wingdi.h)
    Welchen Vorteil hat das gegenüber

    struct RGBTRIPLE {
            BYTE    rgbtBlue;
            BYTE    rgbtGreen;
            BYTE    rgbtRed;
    };
    

    ?

    Moritz



  • Man kann Variablen mit "RGBTRIPLE x" anlegen, wo man sonst "struct RGBTRIPLE x" schreiben müßte. Ob man das mag oder nicht, ist letztenendes Geschmackssache.



  • structs sind container für variablen......
    typedef´s sind neue vereinbarungen für Typen.

    typedef int INT; //macht INT zu einem neuen Bezeichner für einen Datentypen
    typedef struct foo //macht foo zu einem Bezeichner von struct foo
    
    //es lässt sich jetzt schreiben
    INT zahl;
    foo test_struct;
    


  • curry-king schrieb:

    structs sind container für variablen......
    typedef´s sind neue vereinbarungen für Typen.

    Was typedefs sind, war mir klar, ich wußte nur nicht, warum man diese verwendet, wo es aus den Augen eines C++-Programmierers nicht notwendig ist, trotzdem danke.


Anmelden zum Antworten