练习
定义一个类Book, 用来描述新书, 具有以下功能:
查看当前价格.
查看当前的书号.
定义一个类SellBook, 用来表示促销的书籍, 要求继承自Book 类具有以下功能:
- 查看当前折扣
- 设置当前的折扣
- 查看当前的促销价格
参考:
Book.h
#pragma once
#include <iostream>
#include <string>
using namespace std;
class Book
{
public:
Book(float price, string isbn);
~Book();
float get_price(); /* 查看价格 */
string get_isbn(); /* 查看书号 */
protected:
float price; /* 价格 */
string ISBN; /* 书号 */
};
book.cpp
#include "Book.h"
Book::Book(float price, string isbn)
{
this->price = price;
this->ISBN = isbn;
}
Book::~Book()
{
}
float Book::get_price()
{
return price;
}
string Book::get_isbn()
{
return ISBN;
}
SellBook.h
#pragma once
#include "Book.h"
class SellBook :public Book
{
public:
SellBook(float price, string isbn, float discount = 10.0);
~SellBook();
float get_discount();
void set_discount(float discount);
float get_price(); /* 重写自己的get_pice() */
private:
float discount; /* 折扣 */
};
SellBook.cpp
#include "SellBook.h"
#include "Book.h"
SellBook::SellBook(float price, string isbn, float discount)
:Book(price, isbn)
{
this->discount = discount;
}
SellBook::~SellBook()
{
}
float SellBook::get_discount()
{
return discount;
}
void SellBook::set_discount(float discount)
{
this->discount = discount;
}
float SellBook::get_price()
{
float ret = price * discount;
return ret;
}
main.cpp
#include "Book.h"
#include "SellBook.h"
#include <iostream>
using namespace std;
int main()
{
Book book1(98, "32400_12");
cout << "价格: " << book1.get_price() << " isbn: " << book1.get_isbn() << endl;
SellBook book2(98, "32400_12");
cout << "价格: " << book2.get_price() << " isbn: " << book2.get_isbn() << endl;
book2.set_discount(0.5);
cout << "价格: " << book2.get_price() << " isbn: " << book2.get_isbn() << endl;
cout << "折扣: " << book2.get_discount() << endl;
system("pause");
return 0;
}
运行环境: vs2019
运行结果:
结语:
学到的知识要, 多复习, 多总结, 多敲. 需要时间的积累, 才能引起质的改变. 自己写不出来的永远是别人的.
分享一下我的技巧: 代数法把具体的数字带进去, 看看能能能找到规律(掌握思想).
还有就是画图, 也很重要. 用笔画出来, 把数代进去, 方法虽然笨, 但真的很实用, 好记忆不如烂笔头!!!
我是小白, 如果存在问题, 欢迎大神给予评判指正.
错了不可怕, 可怕的是找不出bug
今日是: 2020年5月2日(21:30). 写的时间是这个, 发布的时间就不知道了.写博客也不为啥利益, 爱写就写, 有空就写, 写的时候也能增强自己的敲键盘的速度, 和增强自己的逻辑和记忆.
希望给个赞: 反正你又不亏, 顺便而已