C++ 面向对象思想_练习(仅仅适合小白写写)

练习

定义一个类Book, 用来描述新书, 具有以下功能:
查看当前价格.
查看当前的书号.

定义一个类SellBook, 用来表示促销的书籍, 要求继承自Book 类具有以下功能:

  1. 查看当前折扣
  2. 设置当前的折扣
  3. 查看当前的促销价格

参考:
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). 写的时间是这个, 发布的时间就不知道了.写博客也不为啥利益, 爱写就写, 有空就写, 写的时候也能增强自己的敲键盘的速度, 和增强自己的逻辑和记忆.

希望给个赞: 反正你又不亏, 顺便而已

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值