Zitat von
Muetze1:
Die generischen Typen wachsen mit und somit sind alle Strukturdefinitionen, welche irgendwie das Programm verlassen, damit definiert worden, damit sie gleich gross bleiben, egal auf welchem Compiler.
Das bedeutet also, wenn man programmintern fundamentale Typen verwender, ist es egal, sogar angebracht. Aber wenn man "das Programm verlässt", z. B. bei
API-orientierten Anwendungen, sollte man die generischen Typen verwenden, da diese sich dem zugrundeliegenden Betriebssystem und der CPU anpassen, demzufolge auch der
API zugrunde liegen.
[edit]
Ich bleibe mal beim
API-Beispiel.
Wenn ich auf einem 32 Bit Betriebssystem einen
API-Aufruf mit einem Ordinalwert starte, dann ist der zugrundeliegende Datentyp auch 32Bit und bei einem 64 Bit Betriebssystem würde er automatisch ebenfalls 64 Bit Länge erhalten. Somit wäre es ungünstig, einen Longint zum Emfpang eines Rückgabewertes einer
API-Funktion zu verwenden, welche einen ordinalen Wert zurückliefert. Denn in einem 64-Bit-System wäre der Rückgabewert für den Longint schon nicht mehr speicherbar, bzw. nur über Umwege zu verarbeiten. Und das wäre dann die veringerung der Performance, wie es in der DH schon beschrieben wurde.
Verwende ich generische Typen, kann ich die Anwendung auf verschiednen XXX-Bit-System laufen lassen ohne Probleme mit der Speicherung der Werte zu haben.
[/edit]
Richtig verstanden?