fork(2) download
  1. /*Разработать на языке C++ 32x / 64x разрядные библиотеки(DLL) для работы со
  2. справочником филиальной структуры компании.DLL должна включать следующие
  3. функции : создание нового филиала, редактирование данных филиала, удаление филиала,
  4. просмотр данных филиала, построения «дерева» филиалов.Выполнить демонстрацию
  5. работы DLL на любом языке программирования высокого уровня.Справочник филиальной
  6. структуры должен содержать следующие поля : уникальный идентификатор филиала,
  7. идентификатор филиала родителя, наименование филиала, город, строка подключения к
  8. AD, логин пользователя для доступа к AD, пароль данного пользователя, минимальный
  9. порог оценок, максимальный порог оценок, IP, имеющие доступ к тестированию,
  10. уведомлять об окончании занятий за дней, шаблон рассылки сообщений при добавлении
  11. слушателя в группу, шаблон рассылки сообщений при регистрации пользователя.*/
  12.  
  13.  
  14.  
  15.  
  16.  
  17. #include <iostream>
  18. #include <vector>
  19. #include <string.h>
  20. #include <iterator>
  21.  
  22. #define N 16
  23.  
  24. using namespace std;
  25.  
  26. class Catalog {
  27. public:
  28. long int id, parentid;
  29. char name[N];
  30. char city[N];
  31. char login[N] = { "admin" };
  32. char pass[N] = { "111" };
  33. int minevaluation, maxevaluation;
  34. char ip[N];
  35. char **test;
  36. int start() {
  37. char *p, *l;
  38. cout << endl << "Login: ";
  39. cin >> l;
  40. cout << endl << "Password: ";
  41. cin >> p;
  42. if (!_stricmp(l, login) && !_stricmp(p, pass)) return 1;
  43. else return 0;
  44. };
  45. void dayover() {
  46. cout << endl << "The workday is over.";
  47. };
  48. void newlistener() {
  49. cout << endl << "Added a new listener.";
  50. };
  51. void newuser() {
  52. cout << endl << "Registered a new user.";
  53. };
  54. };
  55.  
  56. class ContainerCatalog {
  57. vector<Catalog> catalogs;
  58. void addcatalog(Catalog &obj) {
  59. catalogs.push_back(obj);
  60. };
  61. public:
  62. void contents() {
  63. Catalog *c = new Catalog;
  64. cout << endl << "Enter id: "; cin >> c->id;
  65. cout << endl << "Enter parent id: "; cin >> c->parentid;
  66. cout << endl << "Enter the name of filial: "; cin >> c->name;
  67. cout << endl << "Enter city: "; cin >> c->city;
  68. cout << endl << "Enter ip: "; cin >> c->ip;
  69. cout << endl << "Enter max. evaluation: "; cin >> c->maxevaluation;
  70. cout << endl << "Enter min. evaluation: "; cin >> c->minevaluation;
  71. //ip's for users that have access to test
  72. int amips;
  73. int len = N;
  74. cout << endl << "Enter amounts of ip's u need to save: "; cin >> amips;
  75. c->test = new char*[amips + 1];
  76. for (int i = 0; i < (amips + 1); i++) c->test[i] = new char[len];
  77. for (int i1 = 0; i1 < (amips + 1); i1++) cin.getline(c->test[i1], len);
  78. cout << endl << "Сreation has been completed successfully";
  79. addcatalog(*c);
  80. };
  81. void watch() {
  82. int number;
  83. cout << endl << "Enter the number of Catalog that u need to watch: "; cin >> number;
  84.  
  85. cout << endl << "Filial id: " << catalogs.at(number).id;
  86. cout << endl << "Parent filial id: " << catalogs.at(number).parentid;
  87. cout << endl << "Filial name: " << catalogs.at(number).name;
  88. cout << endl << "City: " << catalogs.at(number).city;
  89. cout << endl << "Minevaluation/maxevaluation: " << catalogs.at(number).minevaluation << " " << catalogs.at(number).maxevaluation;
  90. cout << endl << "Ip: " << catalogs.at(number).ip;
  91. cout << endl << "Having access to testing: ";
  92. for (int i = 0; i < sizeof(catalogs.at(number).test); i++)
  93. cout << endl << catalogs.at(number).test[i];
  94. };
  95.  
  96. };
  97.  
  98. int main() {
  99. ContainerCatalog cc;
  100. cc.contents();
  101. cc.watch();
  102. system("Pause");
  103. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:31:28: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
  char login[N] = { "admin" };
                            ^
prog.cpp:32:25: error: invalid conversion from 'const char*' to 'char' [-fpermissive]
  char pass[N] = { "111" };
                         ^
prog.cpp: In member function 'int Catalog::start()':
prog.cpp:42:25: error: '_stricmp' was not declared in this scope
   if (!_stricmp(l, login) && !_stricmp(p, pass)) return 1;
                         ^
stdout
Standard output is empty