C++的多态实现三要素

1. public base class

派生类必须为公有继承

2. virtual function

基类中必须包含虚函数

3. pointer reference invocation

必须采用指针或者引用来调用虚函数

 

 1 class A
 2 {
 3 public:
 4     virtual void foo()
 5     {
 6     }
 7 };
 8 
 9 class B : public A
10 {
11 public:
12     void foo() override
13     {
14     }
15 };
16 
17 int main()
18 {
19     B b;
20     A &ref = b;
21     A *ptr = &b;
22 
23     ref.foo();
24     ptr->foo();
25 
26     return 0;
27 }

 

posted @ 2019-05-08 22:05  王景略  阅读(839)  评论(0)    收藏  举报