QUESTION
Write a program in C ++ language that applies the main matters
presented in the object-oriented programming subject in the C ++
language in an educational way that enables the user to identify
the main concepts in the subject and learn how to use and program
them. Attached are examples of each concept?
These concepts:
Records (Structs)
Classes and Data Abstraction
(Introduce Object Paradigm, Class and Object Declarations,
Constructors, Destructors, Constant Objects, and Constant Member
Functions, Array of Objects, This Pointer, Static Members of a
Class, Copy Constructor, When Constructors and Destructors are
called,
Abstract Data Type)
Composition and Inheritance
(Objects as Members of Classes, Inheritance Implementation, Order
of Construction and Destruction Execution, Dominating Base-Class
Members in a Derived Class, Overriding Base-Class Members in a
Derived Class, Derived-Class Object As a Base-Class Object,
Derived- Class Pointers as Base-Class Pointers)
Polymorphism and Virtual Functions
(Polymorphism, Virtual Functions, Virtual Destructor, Rules of
Virtual Functions)
Overloading
(Operator Overloading, Operator Function, Overloading Rules, Friend
Functions, Operator Functions as Member and Non-Member Functions,
Overloading Binary Operators, Overloading Stream Insertion and
Extraction Operators, Overloading the Assignment Operator,
Overloading Unary Operator, Conversion Constructor)
Templates
(Function Template, Class Template)
Exception Handling