Pregunta "Advertencia: uso del molde antiguo" en g ++ [duplicado]


Posible duplicado:
¿Cuándo se deberían usar static_cast, dynamic_cast y reinterpret_cast? 

Con este código C ++,

char* a = (char*) b;

Tengo una advertencia warning: use of old-style cast.

¿Cuál sería el elenco de estilo nuevo?


20
2018-03-09 17:05


origen


Respuestas:


reinterpret_cast, static_cast, dynamic_cast y const_cast son las alternativas de lanzamiento de c ++.

  • const_cast para eliminar const / volátil de una variable const.
  • dynamic_cast para realizar comprobaciones de validez de tiempo de ejecución cuando se realizan transmisiones entre tipos polimórficos
  • static_cast para realizar, por ejemplo, subir / bajar en una jerarquía de herencia, pero sin verificaciones de tiempo de ejecución o para realizar conversiones explícitamente implícitas (por ejemplo, float to int)
  • reinterpret_cast para convertir entre tipos no relacionados.

26
2018-03-09 17:07



Lea este tema para conocer los moldes de estilo C ++ que se presentan en varios sabores:

¿Cuándo se deberían usar static_cast, dynamic_cast, const_cast y reinterpret_cast?


1
2018-03-09 17:09