c++程序设计定义一个 (图书)类,在该类定义中包括

定义一个 (图书)类,在该类定义中包括:

(1) 成员变量:bookname(书名)、price(价格) 和number(存书数量)。

(2) 成员函数:display()显示图书的情况;borrow()将存书数量减1。并显示当前存书数量;restore( )将存书数量加1,并显示当前存书数量。

(3)定义合适的构造函数。

(4)在main函数中,要求建立某几种图书对象,并对该图书进行简单的显示、借阅和归还管理。

已知测试函数如下:

int main()

{ Book b1("English",20,3), b2("math",24,5);

b1.display();

b1.borrow();

b2.display();

b2.restore();

return 0;

}

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS

#include <iostream>
#include <cstring>
using namespace std;
class Book
{
public:
	Book(string b, double p, int n);
	~Book();
	void display();
	void borrow();
	void restore();

private:
	string bookname;
	double price;
	int number;

};

Book::Book(string b, double p, int n)
{
	bookname = b;
	price = p;
	number = n;
}

Book::~Book()
{
}
void Book::display()
{
	cout << "bookname:" << bookname << " " << "price:" << price << " " << "number:" << number << endl;
}
void Book::borrow()
{
	number--;
	cout << "number:" << number << endl;
}
void Book::restore()
{
	number++;
	cout << "number:" << number << endl;
}
int main()
{
	Book b1("English", 20, 3), b2("math", 24, 5);
	b1.display();
	b1.borrow();
	b2.display();
	b2.restore();
	return 0;
}
相关推荐
颜*鸣&空2 小时前
QT程序实现串口通信案例
开发语言·qt
无限进步_2 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
Swift社区2 小时前
LeetCode 432 - 全 O(1) 的数据结构
数据结构·算法·leetcode
逝玄2 小时前
关于图灵停机问题不可判定性证明
算法·计算机科学
froginwe112 小时前
Maven 仓库概述
开发语言
低客的黑调2 小时前
为你的项目选择一个适合的[垃圾收集器]
java·jvm·算法
芬加达3 小时前
leetcode34
java·数据结构·算法
资深web全栈开发3 小时前
LeetCode 1015. 可被 K 整除的最小整数 - 数学推导与鸽巢原理
算法·leetcode·职场和发展
二川bro3 小时前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python