#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 19:07:10 浏览: 33
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电影类、蓝光电影类),以及用户类。其中,书籍类中包括了书籍的名称、编号、作者等属性,并且可以设置借书人、借书证号和借书日期等信息。在主函数中,定义了一本书籍,并且展示了其基本信息,以及设置了借书人、借书证号和借书日期等信息,并且再次展示了其信息。
相关问题
#include<iostream> #include<string>
```#include<iostream>```是C++中用于输入输出的头文件,它包含了一些用于输入输出的函数和对象,例如```cout```和```cin```。```cout```用于输出,```cin```用于输入。```<string>```头文件包含了一些用于字符串操作的函数和对象,例如```string```类。这个头文件中定义了一些字符串操作的函数,例如```getline()```和```stoi()```。其中```getline()```用于从输入流中读取一行字符串,```stoi()```用于将字符串转换为整数类型。需要注意的是,```<string.h>```是C语言中用于字符串操作的头文件,而不是C++中的头文件。
#include<iostream>std;
`#include<iostream>`是C++程序中的预处理指令,它包含了iostream库。iostream库提供了C++程序中处理标准输入/输出流的基本功能。这个库中定义了一些重要的类和对象,以及与输入/输出相关的函数。
`std::cout`是iostream库中的一个对象,它是std::ostream类的一个实例,表示标准输出流(通常是屏幕输出)。通过使用`std::cout`对象,我们可以将数据输出到控制台。
以下是一个简单的示例,演示了如何使用`#include<iostream>`和`std::cout`来输出一条消息到控制台:
```cpp
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}
```
上述代码中,`#include<iostream>`用于包含iostream库,`std::cout`用于输出字符串"Hello, World!"到控制台,`std::endl`用于在输出结束后换行。