Opérateurs de casting
Il existe plusieurs opérateurs de cast spécifiques au langage C++. Ces opérateurs ont pour but de supprimer une partie de l'ambiguïté et du risque inhérents aux casts en langage C de style ancien. Ces opérateurs sont :
dynamic_cast Utilisé pour la conversion des types polymorphes.
static_cast Utilisé pour la conversion des types non polymorphes.
const_cast Utilisé pour supprimer les attributs const, volatile et __unaligned.
reinterpret_cast Utilisé pour la réinterprétation simple des bits.
safe_cast Utilisé pour produire un code MSIL vérifiable.
Utilisez const_cast et reinterpret_cast en dernier recours, car ces opérateurs présentent les mêmes risques que les casts de style ancien. Ils sont néanmoins encore nécessaires pour remplacer complètement les casts de style ancien.