概述
#include <stdio.h>
#include <iostream>
class A
{
public:
/* data */
virtual Aoo(){printf("this is base A functionn");}
};
class B
{
public:
/* data */
virtual Boo() {printf("this is base B virtual functionn");}
};
class C :public A,public B
{
public:
/* data */
virtual Aoo() {printf("this is child C function inherit A classo n");}
};
int main()
{
A* a_p = new C();
a_p->Aoo();
// B* b_p = new C(); 将基类的指针指向子类开辟的空间,这个空间里包括继承基类的成员和子类独有的成员,
//但是b_p的指针类型是基类,只能
// b_p->Aoo(); 读取从基类继承的成员和函数,不能存取子类自己声明的东西,因为基类指针并不知道子类有哪些扩展。((B*)a_p)->Boo();
system("pause");
return 0;
}
最后
以上就是无心哈密瓜为你收集整理的强制类型转换的全部内容,希望文章能够帮你解决强制类型转换所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复