1. 程式人生 > >C++的多態實現三要素

C++的多態實現三要素

ase pre cat function int cati div over virtual

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 }

C++的多態實現三要素