四种cast和typeid的用法

http://www.cplusplus.com/doc/tutorial/typecasting/

 

上面的链接中,讲述了四种cast的用法。

其实我还是没懂。

dynamic_cast : 只能用于指针和对象的引用,目的是能使cast后的双方完全一直。

 

下面抄自thinking in C++ volumn one,  C++ explicit casts

 

static_cast       For “well-behaved” and
                 “reasonably well-behaved” casts,
                 including things you might now
                 do without a cast (such as an
                 automatic type conversion).
const_cast        To cast away const and/or
                 volatile .
reinterpret_cast To cast to a completely different
                 meaning. The key is that you’ll
             need to cast back to the original
             type to use it safely. The type you
             cast to is typically used only for
             bit twiddling or some other
             mysterious purpose. This is the
             most dangerous of all the casts.
dynamic_cast For type-safe downcasting (this
             cast will be described in Chapter
             15).

 

 

你可能感兴趣的:(c)