Hum, le fait que tu doives transtyper en utilisant un truc du genre (type)var c'est quand même parce qu'un compilateur C bien configuré (genre -Wall -Wextra -pedantic -Werror) va te jeter si tu transtypes n'importe comment. Le moment où tu fais un transtypage explicite, c'est le moment où tu dis au compilateur « ta gueule, je sais ce que je fais ». On te donne une corde, tu peux t'en servir pour t'empêcher de tomber du haut de la falaise, mais si tu te sers de ton cou pour t'accrocher, forcément tu vas avoir des surprises.
Après je suis bien d'accord pour dire que le typage fort du C++ et ses méthodes alternatives de transtypage sont quand même plus sûres — mais reinterpret_cast ou static_cast ne sont pas non plus la panacée.
[^] # Re: C++
Posté par lasher . En réponse au journal CPP Con sur Youtube. Évalué à 5.
Hum, le fait que tu doives transtyper en utilisant un truc du genre
(type)varc'est quand même parce qu'un compilateur C bien configuré (genre-Wall -Wextra -pedantic -Werror) va te jeter si tu transtypes n'importe comment. Le moment où tu fais un transtypage explicite, c'est le moment où tu dis au compilateur « ta gueule, je sais ce que je fais ». On te donne une corde, tu peux t'en servir pour t'empêcher de tomber du haut de la falaise, mais si tu te sers de ton cou pour t'accrocher, forcément tu vas avoir des surprises.Après je suis bien d'accord pour dire que le typage fort du C++ et ses méthodes alternatives de transtypage sont quand même plus sûres — mais
reinterpret_castoustatic_castne sont pas non plus la panacée.