Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2167066
  • 博文数量: 556
  • 博客积分: 11457
  • 博客等级: 上将
  • 技术积分: 5973
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-24 22:33
文章分类

全部博文(556)

文章存档

2013年(22)

2012年(74)

2011年(460)

分类: C/C++

2011-04-24 09:10:29

    多态性是面向对象程序设计的重要特征,重载和虚函数是体现多态性的两个重要手段.虚函数体现了多态的灵活性,进一步减少冗余信息,显著提高了软件的可扩充性。
    通过学习前面的函数重载与继承方法后,经常会遇到下面的问题:在派生类中存在对基类函数的重载,当通过派生类对象调用重载函数时却调用了基类中的原函数。
    针对这种情况,我们采用虚函数的方法实现对派生类中重载函数的调用。
 
  1. #include "iostream"
  2. using namespace std;
  3. class A{
  4. private:
  5.  int a,b;
  6. public:
  7.  A(int x,int y)
  8.  {a=x;b=y;}
  9.  virtual void print(){cout<<a<<b;}; //
  10. };
  11. class B:public A{
  12. int c;
  13. public:
  14.  B(int x,int y,int z):A(x,y){
  15.   c=z; }
  16.  void print(){
  17.   A::print();
  18.       cout<<c<<endl;
  19.  }
  20. };
  21. int main()
  22. {
  23.  B b(3,5,8);
  24.  b.print();
  25.    return 0;
  26. }
阅读(854) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~