Fun with numbers - dammit, but I want a cast!
Erik Max Francis
max at alcyone.com
Mon Aug 11 14:15:30 EDT 2003
Terry Reedy wrote:
> No, quite different. A C cast (at least usually) recasts a block of
> bits in a new role without changing the bits. Type constructors
> (unless redundant as in int(1)) return a different object with a
> different set of bits.
Well, the issue is that, in C, a cast can mean a lot of different
things. That's why, in C++, casts are separated into template like
syntaxes depending on their purpose. The unsafe form of C cast is a
reinterpret_cast in C++, and sometimes a const_cast (if you actually
cast away constness of a truly const object and then attempt to mutate
it). The other two -- static_cast and dynamic_cast -- are "safe" in the
sense of being well-defined when the compiler accepts them, and merely
invoke a well-defined conversion and do a runtime type cast,
respectively.
--
Erik Max Francis && max at alcyone.com && http://www.alcyone.com/max/
__ San Jose, CA, USA && 37 20 N 121 53 W && &tSftDotIotE
/ \ Nobody can reach me, nobody can touch me; it's a wonderful feeling.
\__/ Aaliyah
More information about the Python-list
mailing list