-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathPerson.h
60 lines (41 loc) · 1.74 KB
/
Person.h
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
#ifndef PERSON_H
#define PERSON_H
#define STR_LEN 20
// Определение класса Person:
class Person
{
public: // открытые поля:
// Конструктор без параметров, устанавливающий значения свойство по умолчанию:
Person();
// Конструктор с 4 параметрами строка, строка, строка, число,
// для инициализации полей (имя, фамилия, отчество, возраст) класса:
Person(const char* firstName, const char* lastName, const char* patronymic, const int age);
~Person();
// Метод для установки возраста персоны, с проверкой на правильность ввода ( возраст >= 0 и <= 200 ):
bool setAge(int age);
// Метод для установки имени персоны, проверять длину строки:
bool setFirstName(const char* firstName);
// Метод для установки фамилии персоны, проверять длину строки:
bool setLastName(const char* lastName);
// Метод для установки отчества персоны, проверять длину строки:
bool setPatronymic(const char* patronymic);
// Метод для получения возраста персоны:
int getAge();
// Метод для получения имени персоны:
const char* getFirstName();
// Метод для получения фамилии персоны:
const char* getLastName();
// Метод для получения отчества персоны:
const char* getPatronymic();
// Метод вывода информации о персоне на экран:
print();
private: // закрытые поля:
char firstName[STR_LEN]; // имя - строка ( STR_LEN символов ).
char lastName[STR_LEN]; // фамилия - строка ( STR_LEN символов ).
char patronymic[STR_LEN]; // отчество - строка ( STR_LEN символов ).
int age; // возраст - целое число.
static bool checkStrLen(const char* s);
static int strLen(const char* s);
static void strCopy(char* const dest, const char* src);
};
#endif