基于C++的简单图书管理系统
时间: 2023-06-15 07:06:08 浏览: 103
下面是一个基于C++的简单图书管理系统的示例代码:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// 图书结构体
struct Book {
string title;
string author;
string publisher;
int year;
double price;
};
// 图书管理类
class BookManager {
public:
// 添加图书
void addBook(Book book) {
books.push_back(book);
}
// 删除图书
void removeBook(int index) {
if (index < 0 || index >= books.size()) {
cout << "Invalid index!" << endl;
return;
}
books.erase(books.begin() + index);
}
// 显示所有图书
void showAllBooks() {
for (int i = 0; i < books.size(); i++) {
cout << "Index: " << i << endl;
cout << "Title: " << books[i].title << endl;
cout << "Author: " << books[i].author << endl;
cout << "Publisher: " << books[i].publisher << endl;
cout << "Year: " << books[i].year << endl;
cout << "Price: " << books[i].price << endl;
cout << endl;
}
}
private:
vector<Book> books; // 存储所有图书的容器
};
int main() {
BookManager bookManager; // 创建图书管理对象
// 添加几本图书
Book book1 = {"The Catcher in the Rye", "J. D. Salinger", "Little, Brown and Company", 1951, 6.99};
Book book2 = {"To Kill a Mockingbird", "Harper Lee", "J. B. Lippincott & Co.", 1960, 7.19};
Book book3 = {"1984", "George Orwell", "Secker & Warburg", 1949, 7.99};
bookManager.addBook(book1);
bookManager.addBook(book2);
bookManager.addBook(book3);
// 显示所有图书
bookManager.showAllBooks();
// 删除一本图书
bookManager.removeBook(1);
// 再次显示所有图书
bookManager.showAllBooks();
return 0;
}
```
上面的代码中,我们定义了一个 `Book` 结构体,表示一本图书的信息。然后,我们创建了一个 `BookManager` 类,用于管理所有的图书。`BookManager` 类中有三个公有方法:
- `addBook`:用于添加一本图书。
- `removeBook`:用于删除一本图书。
- `showAllBooks`:用于显示所有图书的信息。
在 `main` 函数中,我们首先创建了一个 `BookManager` 对象,然后添加了三本图书。接着,我们调用了 `showAllBooks` 方法,显示所有图书的信息。最后,我们删除了一本图书,再次调用 `showAllBooks` 方法,验证图书已经被成功删除。
阅读全文