Назначение значения срокового параметра в классе
Один из элементов - массив. Проблема в том, что программа не отображает назначенное элементу значение (строку).
Вот исходник, набранный с книжки. Скажите в чем автор оказался крив?
Компилировалось под Борланд СиПП 3.0 фор ДОС. Два параметра назначаются, а вот строковой...
#include<iostream.h>
#include<string.h>
class employee {
public
int assign_values(char *, long, float);
void show_employee(void);
int change_salary(float);
long get_id(void);
private
char name[64];
long employee_id;
float salary;
};
int employeeassign_values (char *emp_name, long emp_id, float emp_salary) {
strcpy(name, emp_name);
employee_id=emp_id;
if(emp_salary<50000.0)
{
salary=emp_salary;
return(0); // Успешно
}
else return(-1); // Недопустимый оклад
}
void employeeshow_employee(void) {
cout << "Служащий " << endl;
cout << "Код служащего " << employee_id << endl;
cout << "Оклад " << salary << endl;
}
int employeechange_salary(float new_salary) {
if (new_salary<50000.0)
{
salary=new_salary;
return(0);
}
else return(-1);
}
long employeeget_id(void) {
return(employee_id);
}
void main(void) {
employee worker;
char m_name[]="Билл Гейтс";
if (worker.assign_values(m_name,101,25000.0)==0)
{
cout << "Служащему назначены новые значения" << endl;
worker.show_employee();
}
else cout << "Указан недопустимый оклад!" << endl;
}
cout << "Служащий: " << endl;
на
cout << "Служащий: " << name << endl;