visual studio code1、多态的理念主要就是用到纯虚函数或者虚函数这个,这个c++的特殊处理函数利用父对象指针来访问子对象,然后根据子对象的函数来调用。
#include
using namespace std;
class parent
{
public:
parent(int a =0):a(a){};
~parent(){};
virtual void show_classname() = 0;
private:
int a;
};
class child1 : public parent
{
public:
child1(int a= 0, int b = 0):parent(a),b(b){};
~child1(){};
void show_classname(){
cout << "class name is child1" <
}
private:
int b;
};
class child2 : public parent
{
public:
child2(int a=0,int c =0):parent(a),c(c){};
~child2(){};
void show_classname()
{
cout<< "class name is child2" <
}
private:
int c;
};
int main()
{
child1 b;
child2 c;
parent *a;
a= &b;
cout << "a ---> b"<
a->show_classname();
a= &c;
cout << "a ---> c"<
a->show_classname();
}
结果:
a ---> b
class name is child1
a ---> c
class name is child2
初次
初次
130***1320@qq.com2年前 (2019-09-03)