首页 > 其他 > 详细

继承与虚函数

时间:2019-08-19 23:58:07      阅读:156      评论:0      收藏:0      [点我收藏+]

  使用继承可以定义相似的类型并对其相似关系建模。

技术分享图片
 1 class Quote {
 2 public:
 3     std::string isbn() const;
 4     virtual double net_price(std::size_t n) const;
 5 };
 6 
 7 class Bulk : public Quote {
 8 public:
 9     double net_price(std::size_t n) const override;
10 };
View Code

  虚函数:通过virtual生命基类中希望派生类定义适合自身的版本,则用virtual来声明基类的函数,在派生类中对应函数的形参列表后面添加override关键字。

 

  动态绑定:使用同一段代码,对具有一定区别的相似类型以统一的方式进行处理。

技术分享图片
double print_total(ostream& os, const Quote& item, size_t n)
{
    double ret = item.net_price(n);
    os << "ISBN: " << item.isbn() << " # sold: " << n << "total due: " << ret << endl;
    return ret;
}
View Code

  调用方法:

技术分享图片
1 print_total(cout, basic, 20);//basic表示基类的函数的调用        
2 print_total(cout, bulk, 20);//bulk表示派生类函数的调用
View Code

 

继承与虚函数

原文:https://www.cnblogs.com/sphoneix/p/11380265.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!