int main() { Book * book1 = new Book("Learning Python","David Ascher"); Book * book2 = new Book("C++ Primer","Scott Meyers"); Category * cs = new Category("Computer Science","A"); Category * pl = new Category("Programming Languages","A1"); pl->add(book1); pl->add(book2); cs->add(pl); Category * swe = new Category("Software Engineering","A2"); cs->add(swe); Category * os = new Category("Operating Systems","A3"); cs->add(os); cout << "Total number of books in library is " << cs->count() << endl; return 0; } class IndexItem { public: virtual int count() = 0; virtual void display()= 0; }; class Book : public IndexItem { private: string title; string author; public: Book(string title, string author): title(title), author(author){} virtual int count(){ return 1; } virtual void display(){ /* YOU DO NOT NEED TO IMPLEMENT THIS FUNCTION */ } }; class Category: public IndexItem { private: /* fill in the private member variables for the Category class below */ ? public: Category(string name, string code): name(name), code(code){} /* Implement the count function below. Consider the use of the function as depicted in main() */ ? /* Implement the add function which fills the category with contents below. Consider the use of the function as depicted in main
int main()
{
Book * book1 = new Book("Learning Python","David Ascher");
Book * book2 = new Book("C++ Primer","Scott Meyers");
Category * cs = new Category("Computer Science","A");
Category * pl = new Category("
pl->add(book1);
pl->add(book2);
cs->add(pl);
Category * swe = new Category("Software Engineering","A2");
cs->add(swe);
Category * os = new Category("
cs->add(os);
cout << "Total number of books in library is " << cs->count() << endl;
return 0;
}
class IndexItem {
public:
virtual int count() = 0;
virtual void display()= 0;
};
class Book : public IndexItem {
private:
string title;
string author;
public:
Book(string title, string author): title(title), author(author){}
virtual int count(){
return 1;
}
virtual void display(){
/* YOU DO NOT NEED TO IMPLEMENT THIS FUNCTION */
}
};
class Category: public IndexItem { private: /* fill in the private member variables for the Category class below */
?
public: Category(string name, string code): name(name), code(code){} /* Implement the count function below. Consider the use of the function as depicted in main() */
?
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 1 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)