26 lines
915 B
C++
26 lines
915 B
C++
|
#include <iostream>
|
||
|
using namespace std;
|
||
|
/* ES sind 4 Casting-Arten in C++:
|
||
|
* 1. static_cast<datentyp>: für primitive Variable
|
||
|
* 2. dynamic_cast: Downcasting von einem Basisklassenzeiger zu einem abgeleiteten Klassenzeiger. Zur Laufzeit wird überprüft
|
||
|
* ,ob die Umwandlung gültig ist.
|
||
|
* 3. const_cast:wird verwendet, um die const- oder volatile-Qualifizierer von einem Zeiger oder einer Referenz zu entfernen oder hinzuzufügen.
|
||
|
* 4. reinterpret_cast: wird verwendet, um einen Zeiger oder eine Referenz in einen anderen, möglicherweise nicht verwandten Typ umzuwandeln
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
int main() {
|
||
|
double d = 9.78;
|
||
|
|
||
|
//traditionelle Methode des Castings
|
||
|
int x = (int) d;
|
||
|
cout<<"Die traditionelle Methode des Castings: " << x <<endl;
|
||
|
|
||
|
|
||
|
//modernere und bevorzugte Methode des Castings in C++
|
||
|
int i = static_cast<int>(d);
|
||
|
cout<< "Die modernere und bevorzugte Methode des Castings: " << i;
|
||
|
|
||
|
return 0;
|
||
|
}
|