#include<iostream> #include<string> #include<vector> #include<map> #include<iomanip> #include <list> using namespace std; class item { public: string name;//书名 string item_type;//项目类型 bool Register;// }; //杂志类 class magazine :public item//类的继承 { string Type; string Writer; }; //MusicCd类 class MusicCd :public item { string Singer; }; //电影类 class Movie :public item { string Type; string Director; string Actor; }; //书籍类 class Book : public item { public: Book() { borrow_flag = false; } //无参构造函数 Book(string name, string num, string auther) :name(name), num(num), auther(auther) { borrow_flag = false; } //有参构造函数 void setReader(string reader, int lcn, string data); //设置读者 void setInfo(string name, string num, string auther); //设置书籍信息 string getName() { return name; } string getNum() { return num; } string getAuther() { return auther; } bool getBorrow_flag() { return borrow_flag; } string getReader() { return reader; } int getLcn() { return lcn; } string getData() { return data; } bool isBorrow() { return borrow_flag; } //判断书籍是否借出 void setBorrow_flag(bool b) { borrow_flag = b; } void showInfo(); //显示数据信息 private: string name; //书名 string num; //编号(唯一标示) string auther; //作者 bool borrow_flag; string reader; //读者 int lcn; //借书证号 string data; //借书日期 }; //DVD电影类 class DVD :public Movie { }; //蓝光电影类 class Blue_ligh :public Movie { }; //用户 class Person { public: string Name; string Adress; list<item> Regist_items; }; void Book::setReader(string reader, int lcn, string data) { borrow_flag = true; this->reader.assign(reader); this->lcn = lcn; this->data.assign(data); } void Book::setInfo(string name, string num, string auther) { this->name.assign(name); this->num.assign(num); this->auther.assign(auther); } void Book::showInfo() { cout << "书籍名称:" << setiosflags(ios_base::left) << setw(56) << name << endl << "书籍编号:" << setw(56) << num << endl << "书籍作者:" << setw(56) << auther << endl;//setw()输出字符宽度 if (borrow_flag) { cou
时间: 2024-01-06 16:07:10 浏览: 159
#include <iostream>
t << "借书人:" << setw(56) << reader << endl << "借书证号:" << setw(56) << lcn << endl << "借书日期:" << setw(56) << data << endl; } else { cout << "该书籍未被借出" << endl; } } int main() { Book b1("C++ Primer", "001", "Lippman"); b1.showInfo(); b1.setReader("Tom", 123456, "2022-05-01"); b1.showInfo(); return 0; }
这段代码定义了一个图书管理系统的基本功能,其中包括了不同类型的物品类(杂志类、音乐CD类、电影类、书籍类、DVD电影类、蓝光电影类),以及用户类。其中,书籍类中包括了书籍的名称、编号、作者等属性,并且可以设置借书人、借书证号和借书日期等信息。在主函数中,定义了一本书籍,并且展示了其基本信息,以及设置了借书人、借书证号和借书日期等信息,并且再次展示了其信息。
阅读全文