您的位置:首页 > 编程语言 > C语言/C++

c++ 虚函数 多态性 (一)

2014-02-19 09:15 176 查看
#include <iostream>

using namespace std;

class A

{

public:

void foo () {

printf ("1\n");

}

virtual void fun () {

printf ("2\n");

}

};

class B

: public A

{

public:

void foo () {

printf ("3\n");

}

virtual void fun () {

printf ("4\n");

}

};

void main ()

{

A a;

B b;

A* pa = &a;

pa->foo (); // 1

pa->fun (); // 2

pa = &b;

pa->foo (); // 1

pa->fun (); // 4

B* pb = (B*)&a; // ps:不强制转换会报错

pb->foo (); // 3

pb->fun (); // 2

pb = &b;

pb->foo (); // 3

pb->fun (); // 4

getchar ();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: