#ifndef BOOKLIST_H #define BOOKLIST_H #include #include using namespace std; class Book { private: string title; string author; string isbn; string price; public: Book() : price("0.0") {} Book(string t, string a, string i, string p) : title(t), author(a), isbn(i), price(p) {} string getTitle() const {return title;} string getAuthor() const {return author;} string getIsbn() const {return isbn;} string getPrice() const {return price;} }; class BookCollection { private: map bookList; string notFound; string filename; public: BookCollection() : notFound("Title Not Found"), filename("books.txt") {loadData();} bool addBook(const Book & b); Book findBook(const string & isbn) const; bool removeBook(const string & isbn); void print(ostream & os) const; int size() const {return bookList.size();} bool loadData(); void saveData(); }; // Overloaded insertion operator to print out all info on a book. ostream& operator<<(ostream & os, const Book & b); //Check to see if an Isbn number is valid bool isValid(const string & isbn); // Helper function used by isValid void copyNoHyphen(const string & isbn, string & copy); #endif