class Parent
{
public:
void geta()
{
cout<<"------------------ Parent geta-------------------"<<endl;
}
virtual void getb()
{
cout<<"------------------Parent virtual getb-------------------"<<endl;
}
};
class child :public Parent
{
public:
void geta()
{
cout<<"------------------ child geta-------------------"<<endl;
}
virtual void getb()
{
cout<<"------------------child virtual getb-------------------"<<endl;
}
void cgeta()
{
cout<<"------------------ child cgeta-------------------"<<endl;
}
};
int _tmain(int argc, _TCHAR* argv[])
{
Parent *p=NULL;
child *pp=NULL;
Parent parent;
child child;
p=&parent;
p->geta();
p->getb();
p=&child;
p->geta();
p->getb();
pp=(child*)(&parent); //报错 子类指针不能指向父类对象
pp->geta();
pp->getb();
pp->cgeta();
return 0;
}
<pre name="code" class="html">
基类指针+子类指针问题
最新推荐文章于 2022-02-22 23:08:59 发布