#include <iostream>
using namespace std;
class A
{
int a;
};
class B
{
int b;
};
class C:public A, public B
{
int c;
};
int main()
{
C *pC=new C;
A *pA=pC;
B *pB=pC;
cout<<pA<<endl; //pA指向对象C中的子类A部分
cout<<pB<<endl; //pB指向对象C中的子类B部分
cout<<pC<<endl;
if(pC==pA) //pC与pB类型不同,比较时需进行隐式类型转换,即pC=(C *)pA
cout<<"equal"<<endl;
if(pC==pB) //pC与pB类型不同,比较时需进行隐式类型转换,即pC=(C *)pB
cout<<"equal"<<endl;
return 0;
}
基类指针与子类指针的比较
最新推荐文章于 2021-11-12 16:35:47 发布