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

Programming Logic & Design Comprehensive
9th Edition
ISBN:9781337669405
Author:FARRELL
Publisher:FARRELL
Chapter8: Advanced Data Handling Concepts
Section: Chapter Questions
Problem 16RQ
icon
Related questions
Question

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() */
?
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Data members
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage