指向派生类对象的指针可以转换为指向基类对象
的指针,但是只能引用基类成员。
#include<iostream>
using namespace std;
class A
{
int x;
public:
A(int i){x=i;}
void dispa(){cout<<"x="<<x<<endl;}
};
class B:public A
{
int y;
public:
B(int i, int j):A(i){ y=j;}
void dispb(){cout<<"y="<<y<<endl;}
};
void fun(A a)
{
a.dispa();
}
int main()
{
A a(10), *p;
B b(20, 30);
p = &a;
p->dispa();
p = &b;
p->dispa();
return 0;
}
本文介绍了C++中如何通过指针实现对基类与派生类对象的引用,并详细解释了指针转换的原理及限制,通过实例演示了如何在不同对象间进行灵活操作。
4676

被折叠的 条评论
为什么被折叠?



