Use an IDE to create an an application in c++ that does the following.

// Use of Classes and arrays

#include <iostream>

using namespace std;

// Employee class definition

class Employee

private:

string empName;

string empAddress;

string empEmail;

int vacationMonths;

int * empVacationDays; // hold vacation days taken for every month

public:

void setEmpName(string);

string getEmpName();

void setEmpAddress(string);

string getEmpAddress();

void setEmpEmail(string);

string getEmpEmail();

void setEmpVacationDays(int, int); // sets vacation days for a specific month

int getEmpVacationDays(int); //gets vacation days taken in a specific month

int getTotalEmpVacationDays(); //gets the total vacation days

// Constructor

Employee();

Employee(int); // this constructor sets up the size of the emplyee vacation array

// Destructor

~Employee();

};

//definition of set/get member functions of Employee class

void Employee::setEmpName(string name)

empName=name;

}

void Employee::setEmpAddress(string address)

empAddress=address;

void Employee::setEmpVacationDays(int month, int vDays)

empVacationDays[month-1]=vDays;

void Employee::setEmpEmail(string email)

empEmail=email;

string Employee::getEmpName() { return empName; }

string Employee::getEmpAddress() { return empAddress; }

string Employee::getEmpEmail() { return empEmail; }

int Employee::getEmpVacationDays(int month) { return empVacationDays[month-1]; }

int Employee::getTotalEmpVacationDays()

{

int sum = 0;

for (int i=0; i<12; i++)

sum += empVacationDays[i];

return sum;

// Constructor 1 definition

Employee::Employee()

empName = "";

empAddress = "";

empEmail="";

vacationMonths = 12;

empVacationDays = new int [vacationMonths];

for (int i=0; i<vacationMonths; i++)

empVacationDays[i] = 0;

// Constructor 2 definition

Employee::Employee(int months)

empName = "";

empAddress = "";

empEmail="";

vacationMonths = months;

empVacationDays = new int [months];

for (int i=0; i<vacationMonths; i++)

empVacationDays[i] = 0;

// Destructor definition

Employee::~Employee()

delete [] empVacationDays; // de-allocating the array space before object is deleted

void displayMenu(Employee *emp)

cout << emp->getEmpName() << ", please select an action from the menu below" << endl;

cout<<"My Menu";

cout<<"========" << endl;

cout<<"1 - View My Address" << endl;

cout<<"2 - View My Email Address" << endl;

cout<<"3 - View Total Vacation Days Taken" << endl;

cout<<"4 - View Vacation Days Taken in Specific Month" << endl;

cout<<"X - Exit " <<endl<<endl;

// View address for <name>

void viewAddress(Employee *emp)

cout << "Name: " << emp->getEmpName() << endl;

cout << "Address: " << emp->getEmpAddress() << endl;

// View email address for <name>

void viewEmail(Employee *emp)

cout << "Name: " << emp->getEmpName() << endl;

cout << "Email Address: " << emp->getEmpEmail()<< endl;

// returns total vacation days taken for <name>

int totalVacationDays(Employee *emp)

return emp->getTotalEmpVacationDays();

// returns vacation days taken for a specific month for <name>

int vacationDaysMonth(Employee *emp, int month)

return emp->getEmpVacationDays(month);

int main(void)

// variable declaration section

char selection = ' ';

string months[12] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};

Employee employee1;

//Initialize employee1 members

employee1.setEmpName("John Smith");

employee1.setEmpAddress("1235 Main Street");

employee1.setEmpEmail("[email protected]");

employee1.setEmpVacationDays(1, 2); // 2 vacation days taken in the month of January

employee1.setEmpVacationDays(7, 8); // 8 vacation days taken in the month of July

//display employee name

cout << "Hello "+ employee1.getEmpName() << endl;

do

{

// display menu

displayMenu(&employee1);

// read user selection

cin>>selection;

switch(selection)

{

case '1':

cout<< "View My Address is selected" << endl;

viewAddress(&employee1);

break;

case '2':

cout<< "View My Email Address is selected" << endl;

viewEmail(&employee1);

break;

case '3':

cout<< "View Total Vacation Days Taken is selected" << endl;

cout << "You have taken " << totalVacationDays(&employee1) << " days!!" << endl;

break;

case '4':

cout<< "View Total Vacation Days Taken for Specific Month is selected" << endl;

cout << "Enter month => ";

int month;

cin >> month;

cout << "You have taken " << vacationDaysMonth(&employee1, month) << " days in month of " << months[month-1] << endl;

break; case 'X' :

case 'x':

cout<<"Thank you!!!" << endl;

break;

// other than 1, 2, 3 and X...

default : cout<<"Invalid selection. Please try again";

// no break in the default case

}

cout<<endl<<endl;

} while (selection!= 'X' && selection != 'x');

return 0;