错误多态使用

#include<iostream>

usingnamespacestd;

classA
{
public:
A(){cout<<"A::"<<endl;}
virtualvoidfunc1(){cout<<"A::func1"<<endl;}
};

classB:publicA
{
public:
voidfunc1(){cout<<"B::func1"<<endl;}
};

voidfunc(A pA)//这不是多态的使用,这个只会隐式类型转换
{
pA.func1();
}

intmain()
{
cout<<"Hello World!"<<endl;
Bb;
Aa;
func(b);
return0;
}
posted @ 2013-02-22 17:04  fengtingxia  阅读(147)  评论(0)    收藏  举报