typedef

Mittels typedef kann man aliasnamen für Typen erstellen. Nehmen wir einmal an, wir wollen ein Programm für 100.000 verschiedene Plattformen/Betriebssysteme/etc. schreiben. Der Typ int ist dann ja überall unterschiedlich groß - das kann natürlich zu Problemen führen. Wir erstellen also ein typedef für Int32 - ein 'int' mit mindestens 32Bit.

    //annahme char==1Bit, short==16Bit, int==32Bit
    //zB auf win32
    typedef char  Int8;
    typedef short Int16;
    typedef int   Int32;
    

Wir haben neue Typen erstellt. Wir können statt int einfach Int32 schreiben. Natürlich muss man diese typedefs auf jeder Zielplattform anpassen - aber dieser Aufwand ist nicht sonderlich groß.

Allerdings ist ein typedef nur ein Aliasname - dies merkt man zB bei Überladung:

    typedef int WasAnderes;

    void foo(int i)
    {
    }

    void foo(WasAnderes w)  //fehler, foo(int) bereits definiert
    {
    }
    

top