Лекция: Классы С++

Материал с лекции: Архив презентации

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#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 employee::assign_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 employee::show_employee(void)
{
  cout << "Служащий: " << name << endl;
  cout << "Номер служащего: " << employee_id << endl;
  cout << "Оклад: " << salary << endl;
}
 
int employee::change_salary(float new_salary)
{
  if (new_salary < 50000.0)
  {
    salary = new_salary;
    return(0); // Успешно 
  } else return(-1); // Недопустимый оклад 
}
 
long employee::get_id(void)
{
  return(employee_id) ;
}
 
void main(void)
{
  employee worker;
  if (worker.assign_values("Happy Jamsa", 101, 10101.0) == 0)
  {
    cout << "Служащему назначены следующие значения" << endl;}
    worker.show_employee();
    if (worker.change_salary(35000.00) == 0)
    {
       cout << "Назначен новый оклад" << endl;
       worker.show_employee();
    }
  }else
  cout << "Указан недопустимый оклад" << endl;
}