Month Class Design a class named Month. The class should have the following priv
ID: 3620544 • Letter: M
Question
Month ClassDesign a class named Month. The class should have the following private members:
• name A MyString object (from the MyString class presented in this
chapter) as a member. The name object should hold the name of a
month, such as “January”, ‘February’, etc.
• mon-thNumber An integer variable that holds the number of the month. For exam ple January would be 1, February would be 2, etc. Valid values for
this variable are 1 through 12.
In addition, provide the following member functions:
• A default constructor that sets monthNumber to 1 and name to “January”.
• A constructor that accepts the name of the month as an argument. It should set name to the value passed as the argument and set monthNuiuber to the correct value.
• A constructor that accepts the number of the month as an argument. It should set monthNumber to the value passed as the argument and set name to the correct month name.
• Appropriate set and get functions for the name and monthNumber member variables.
• Prefix and postfix overloaded ++ operator functions that increment monthNumber and set name to the name of next month. If monthNumber is set to 12 when these functions execute, they should set monthNumber to 1 and name to “January”.
• Prefix and postfix overloaded - - operator functions that decrement monthNumber and set name to the name of previous month. IfmonthNumber is set to 1 when these functions execute, they should set nionthNumber to 12 and name to “December”.
Also, you should overload cout’s << operator and cm’s>> operator to work with the Month class Demonstrate the class in a program.
This should use vectors instead of arrays as much as possible.