码迷,mamicode.com
首页 > 编程语言 > 详细

C++primer 15.2.1节练习

时间:2017-09-13 21:24:47      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:ice   prot   protected   nbsp   int   虚函数   std   main   span   

练习15.1

基类将类型相关的函数与派生类不做改变直接继承的函数区别对待,对于某些函数,基类希望他的派生类个自定义适合自身的版本,此时基类就将这些函数声明成虚函数。

练习15.2

protected:允许类的派生类访问其成员,而不允许其他用户访问

private:禁止所有用户包括其派生类访问其私有成员

练习15.3

 1 #include <iostream>
 2 #include <string>
 3 #include <utility>
 4 #include <memory>
 5 #include <vector>
 6 
 7 using namespace std;
 8 
 9 class Quote {
10 public:
11     Quote() = default;
12     Quote(const string &book, double sales_price) : bookNo(book), price(sales_price) {}
13     string isbn() { return bookNo; }
14     virtual double net_price(size_t n) const{ return n * price; }
15     virtual ~Quote() = default;
16 private:
17     string bookNo;
18 protected:
19     double price = 0.0;
20 };
21 
22 double print_total(ostream& os, const Quote& item, size_t t);
23 
24 int main()
25 {
26     
27     system("pause");
28     return 0;
29 }
30 
31 double print_total(ostream & os, const Quote &item, size_t t)
32 {
33     double ret = item.net_price(t);
34     os << "ISBN: " << item.isbn << " # sold: " << t << " total due: " << ret << endl;
35     return ret;
36 }

 

C++primer 15.2.1节练习

标签:ice   prot   protected   nbsp   int   虚函数   std   main   span   

原文地址:http://www.cnblogs.com/wuyinfenghappy/p/7517575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!