
06.06.2009, 19:06
|
|
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
С нами:
10216668
Репутация:
930
|
|
Код:
class Empl {
private :
string Name;
string LName;
int Rate;
public :
Empl();
Empl(string inName, string inLName, int Rate);
void setName(string inName);
void setLName(string inLName);
void setRate(int inRate);
string getName();
string getLName();
int getRate();
#void del();
#void display();
};
Empl::Empl() {
Name='';
LName='';
Rate=-1;
}
Empl::Empl(string inName, string inLName, int Rate) {
Name = inName;
LName = inLName;
Rate = inRate;
}
# Далее определишь все остальное, мне лень ;(
#database
const int MaxEmpl = 100;
const int FirstEmplNum = 1;
class database {
private :
Empl iEmpl[MaxEmpl];
int NextSlot;
int NextEmplNum;
public :
database();
Empl& addEmpl(string inName, string inLName, int inRate);
Empl& getEmpl(int inEmplNum);
Empl& getEmpl(string inName, string inLName);
void display();
...
# все варианты вывода данных
};
database::database() {
NextSlot = 0;
NextEmplNum = FirstEmplNum;
}
Empl& database::addEmpl(string inName, string inLName) {
if (NextSlot >= MaxEmpl) {
cerr << " No more places here ;(" << endl;
throw exception();
}
Empl& tEmpl = iEmpl[NextSlot++];
tEmpl.setName(inName);
tEmpl.setLName(inLName);
tEmpl.setRate(inRate);
return tEmpl;
}
Empl& database getEmpl(int inEmplNum) {
for (iny i = 0; i < NextSlot; i++) {
if (iEmpl[i].getEmplNum() == inEmplNum) {
return iEmpl[i];
}
}
cerr << "There is no person with number " << inEmplNum << endl;
throw exception();
}
# Мне надо бежать, дальше думаю понятно
Вот набросал что-то. Сейчас нужно уходить, поэтому не закончил. Посмотри, думаю принцип понятен.
Последний раз редактировалось Fata1ex; 06.06.2009 в 19:54..
|
|
|