static_cast < type-id > ( expression )The expression static_cast < type-id > ( expression ) converts expression to the type of type-id based solely on the types present in the expression. No run-time type check is made to ensure the safety of the conversion.reinterpret_cast < type-id > ( expression )The reinterpret_cast operator allows any pointer to be converted into any other pointer type, and it allows any integral type to be converted into any pointer type and vice versa. Misuse of the reinterpret_cast operator can easily be unsafe. Unless the desired conversion is inherently low-level, you should use one of the other cast operators.dynamic_cast < type-id > ( expression )The expression dynamic_cast< type-id >( expression ) converts the operand expression to an object of type type-id. The type-id must be a pointer or a reference to a previously defined class type or a "pointer to void". The type of expression must be a pointer if type-id is a pointer, or an l-value if type-id is a reference.in addition:
const_cast < type-id > ( expression )The const_cast operator can be used to remove the const, volatile, and __unaligned attribute(s) from a class.MSDN has the details!

解决方案 »

  1.   

    还有一个const_cast吧,强制转换掉常特性。
      

  2.   

    第一种将PB转换为PA类型
    第二种将第一种转换为静态PA型
    第三种将第一种转换为现在PA的类型
    第四种PA什么类型PB就是什么类型
      

  3.   

    对不起,我就是英文不好,不能清楚理解MSDN的说明才提问的。各位高手能否详细指点指点?
      

  4.   

    http://www.csdn.net/Develop/article/11%5C11637.shtm
    http://bbs.bisrs.com/bbs/topic.cgi?forum=25&topic=27y应该对你有些帮助,其实看c++编程思想,上面讲的很全的