代码:
1 #include <iostream> 2 #include <cstdio> 3 4 using namespace std; 5 6 class A{ 7 public: 8 void print(){ 9 //virtual void print(){ 10 cout<<"A"<<endl; 11 } 12 }; 13 class B:public A{ 14 public: 15 void print(){ 16 cout<<"B"<<endl; 17 } 18 }; 19 20 int main(){ 21 22 B b; 23 A& a = b; 24 a.print(); 25 26 return 0; 27 }
输出:
A
若将A中的print()函数改成虚函数,则输出
B
分析:
由以上代码可知,基类对象的引用和指针实际上是非常相似的。