ciao , sto studiando modern c++ design per imparare la metaprogrammazione.
prima ho letto template the complete guide.
Mi sono fermato senza capire su questo codice:
codice:
template <class To, class From>
To safe_reinterpret_cast(From from)
{
assert(sizeof(From) <= sizeof(To));
return reinterpret_cast<To>(from);
}
serve per fare un cast "sicuro" , in realtà testa il sizeof dei tipi.
Quello che non capisco è :
non ci potrebbe essere un tipo della stessa grandezza ma che non centra un pifero con la classe in cui lo vogliocastare?
ci deve essere sicuramente una spiegazione , o qualcosa che non ho capito.
Questo uso (del sizeof e dei tipi è usato abbondantemente intutto il libro).

grazie