En el lenguaje de programación C++static_cast , es un operador que realiza una conversión de tipo explícita . [ 1 ]
Sintaxis
static_cast < tipo > ( objeto );El parámetro de tipo debe ser un tipo de dato al que se pueda convertir un objeto mediante un método conocido, ya sea un método integrado o una conversión de tipo. El tipo puede ser una referencia o un enumerador. Todos los tipos de conversiones bien definidos y permitidos por el compilador se realizan utilizando static_cast. [ 2 ]
El static_cast<>operador puede utilizarse para operaciones tales como:
- convertir un puntero de una clase base a un puntero de una clase derivada no virtual ( conversión descendente );
- convertir tipos de datos numéricos como enumeraciones a enteros o números de coma flotante .
Aunque static_castlas conversiones se comprueban en tiempo de compilación para evitar incompatibilidades obvias, no se realiza ninguna comprobación de tipos en tiempo de ejecuciónstatic_cast que impida una conversión entre tipos de datos incompatibles, como los punteros. Una conversión de un puntero a una clase Ba un puntero a una clase derivada Des incorrecta si Bes una base inaccesible o ambigua de D. Una static_castconversión de un puntero de una clase base virtual (o una clase base de una clase base virtual) a un puntero de una clase derivada es incorrecta.
Véase también
Referencias
- C++
- teoría de tipos