子类指针转换成父类指针时,指针值会变化

Posted superCPP

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了子类指针转换成父类指针时,指针值会变化相关的知识,希望对你有一定的参考价值。

      指针转换在C++中再正常不过了,特别是子类向父类的转换,一般情况下转换后指针值是不会变的。但是某些特殊情况,子类指针转换成父类指针,指针值会产生一定的偏移量,至于为什么就不清楚了。要确保指针值不变,可以先将指针转成void*,再根据实际情况强制转换成需要的类型就可以了。

本文地址:http://www.cnblogs.com/vcpp123/p/5902866.html

 

参考文章:

C++多重继承下的指针类型转换

http://www.veryhuo.com/a/view/52953.html

http://blog.csdn.net/chinabinlang/article/details/37879393

以上是关于子类指针转换成父类指针时,指针值会变化的主要内容,如果未能解决你的问题,请参考以下文章

使用static_cast进行父类指针转子类指针可能出现的问题

结构体内结构体指针是,在函数中对结构体指针进行操作值会发生变化?

将基类指针强制转换为子类指针后的疑惑

是否可以从父类指针向下转换为第二个子类中的子类指针?

派生类地址比基类地址少4(子类与基类指针强行转换的时候,值居然会发生变化,不知道Delphi BCB是不是也这样) good

父子类上下强制转换访问权限问题