int newSize = this->EmpNum + addNum;
Worker ** newSpace=new Worker* [newSize];
if (this->EmpArray != NULL) {
for (int i = 0; i < this->EmpNum; i++) {
newSpace[i] = EmpArray[i];
}
}
for (int i = 0; i < addNum; i++) {
int id;
string name;
int dselect;
cout << "Please enter number " << i + 1 << " staff's number : ";
cin >> id;
cout << "Please enter number " << i + 1 << " staff's name : ";
cin >> name;
cout << "Please enter number " << i + 1 << " staff's department select : "<<endl;
cout << "1. employee" << endl;
cout << "2. manager" << endl;
cout << "3. boss" << endl;
cin >> dselect;
Worker* worker = NULL;
switch (dselect) {
case 1:
worker = new Employee(id, name, 1);
break;
case 2:
worker = new Manager(id, name, 2);
break;
case 3:
worker = new Boss(id, name, 3);
break;
default:
break;
}
newSpace[this->EmpNum+i] = worker;
}
delete[] EmpArray;
this->EmpArray = newSpace;
this->EmpNum = newSize;
cout << "Add successfully!" << endl;
this->Save();