Mit static_cast kannst du alles casten was nicht implizit gecastet wird aber explizit möglich ist.static_cast wird sich weigern etwas zu casten was absoluter Nonsens ist. C Casts sind da wesentlich großzügiger und somit auch potentiell unsicherer. static_cast ist auch nicht der einzige mögliche C++ Cast.
Es gibt noch: -dynamic_cast Für Downcasts mit (Laufzeit)Typüberprüfung.Castet also einen Basisklassen Zeiger in den Zeiger einer abgeleiteten Klasse sofern das Onjekt hinter dem Zeiger wirklich von diesem Typ ist.Gibt ansonsten null zurück. -reinterpret_cast: Ist IMHO am ehesten mit dem C Cast zu vergleichen.Castet eigentlich fast alles zu jeden Typ.Sollte man also auch mit Bedacht einsetzen. -const_cast Castet bei,als const deklarierten,Variablen die Konstantheit weg.Da man im Regelfall ja seine Gründe hat eine Variable als const zu deklarieren ist const_cast also auch eher für "Sonderfälle" gedacht.
Generell sind die C++ Casts vorzuziehen weil sie gegenüber dem C Cast mehr Sicherheit bringen und es für jeden Zweck einen angemessenen gibt.
MfG Spacelord -- .....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.Dieser Post wurde am 13.10.2005 um 20:09 Uhr von Spacelord editiert.