Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The following C++ class Magazine has three data members, namely the title of a magazine, the number of articles and a dynamic array of Articles.
The following C++ class Magazine has three data members, namely the title of a magazine, the number of articles and a dynamic array of Articles. Based on the following class declaration, code the copy assignment operator (=) for this class. Your code must avoid memory leaks. (8 marks)
1. const int MAX = 100; 2. class Article{ 3. char m_name[MAX]; 4. public: 5. Article();//default constructor 6. Article(const char* name);//overload constructor that sets name of an Article object 7. void changeName(const char* name);//sets the name of an Article object 8. const char* retrieveName();//returns the name of an Article object 9. void setEmpty();//sets an Article object to a safe empty state 10. Article& operator=(const Article& source);//overload = operator to work with Article 11. } 12. class Magazine{ 13. char m_Title[MAX]; 14. Article* m_Articles; 15. int m_numberOfArticles; 16. public: 17. }; 18.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started