-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.cpp
89 lines (59 loc) · 1.94 KB
/
main.cpp
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#define _CRT_SECURE_NO_WARNINGS
#include <tchar.h>
#include "MyBD.h"
#define stop __asm nop
int _tmain(int argc, _TCHAR* argv[])
{
//////////////////////////////////////////////////////////////////////
/*
Разработать "базу данных" о сотрудниках посредством ассоциативного
//массива. Ключом является фамилия (ключ в задании уникален, поэтому нескольких Ивановых
//в базе быть не может), а данными: пол, возраст, должность, зарплата...
//Реализуйте:
//добавление сотрудников в базу
//исключение сотрудника из базы
//вывод информации о конкретном сотруднике
//вывод всей (или интересующей) информации о всех сотрудниках
*/
stop
Base bd1; //создание пустой базы
//добавляем сотрудников в базу
bd1["Ivanov"] = MyData(MALE, 20, "AAA", 4);
bd1["Petrova"] = MyData(FMALE, 30, "BBB", 7);
bd1["Sidorov"] = MyData(MALE, 40, "CCC", 9);
stop
std::cout << bd1; //выводим информацию обо всех сотрудниках
std::cout << bd1["Petrova"]; //выводим информацию о сотруднике
bd1.deletePair("Petrova"); //исключаем сотрудника
std::cout << bd1;
//Задание 2.1. создайте 2 копии базы bd1
Base bd2 = bd1;
std::cout << bd2; //выводим информацию обо всех сотрудниках из базы bd2
Base bd3 = bd1;
std::cout << bd3; //выводим информацию обо всех сотрудниках из базы bd3
//Задание 2.2.
//добавьте сотрудников в базу bd2
bd2["Alekseva"] = MyData(FMALE, 50, "DDD", 11);
std::cout << bd2;
bd1 = bd2; // из "большой" в "маленькую"
std::cout << bd1;
bd2["Dmitriev"] = MyData(MALE, 60, "EEE", 12);
bd1 = bd2; // из "большой" в "маленькую"
std::cout << bd1;
//Задание 2.3.
bd1 = bd3; // из "маленькой" в "большую"
std::cout << bd1;
//Задание 3. вспоминаем про семантику перемещения
Base bd4 = std::move(bd2);
std::cout << bd4;
std::cout << bd2;
// Задание 3.2.
bd3 = std::move(bd4);
std::cout << bd3;
std::cout << bd4;
//Задание 4. Сортировка
std::cout << bd3;
bd3.Sort();
std::cout << bd3;
return 0;
}