Opened 4 years ago

Closed 4 years ago

#674 closed ожидается проверка (задача сдана)

WW #11

Reported by: luchinin.aleksey Owned by: Дмитрий Свиридкин
Component: WW cpp_io Version: 2.0
Keywords: Cc:

Description


Change History (3)

comment:1 Changed 4 years ago by Дмитрий Свиридкин

Owner: changed from Дмитрий Свиридкин to luchinin.aleksey
Type: ожидается проверкаожидаются исправления

Вроде работает

Строку в конструктор надо бы передавать по константной ссылке

Деструкторы наследников, если они тривиальные, можно не определять.

создавать объект, зачем читать, затем копировать его, а потом удалять исходный?
Создайте объект в куче вместо стека и отдайте владение первым указателем сразу массиву (нужно где-то убрать или добавить const)

Код с определением типа и чтением из main надо убрать. Этот код должен быть частью функционала модуля, а не пользовательским кодом.

Магические константы для типов стоит заменить на enum/именованные константы

7.5/10

comment:2 Changed 4 years ago by luchinin.aleksey

Owner: changed from luchinin.aleksey to Дмитрий Свиридкин
Type: ожидаются исправленияожидается проверка
Version: 1.02.0

Исправил недочёты

comment:3 Changed 4 years ago by Дмитрий Свиридкин

Resolution: задача сдана
Status: assignedclosed

Конструктор Developer принимает строку по неконстантной ссылке.
SalesManager - по копии

    void read_employee(std::istream &istr, EmployeesArray &employees);

    void read_bin(std::ifstream &ifstr, EmployeesArray &employees);

    void read_bin_employee(std::ifstream &ifstr, EmployeesArray &employees);

Эти методы, видимо, должны быть статическими, либо только с одним параметром.
а то это какой-то кошмар: array.read_employee(std::cin, array);


void Employee::convert_to_string_name(char *buf) {
    int cnt = 0;
    while (buf[cnt] != '\0') {
        name_ += buf[cnt++];
    }
}

У строк есть оператор присваивания.


8.9/10

Note: See TracTickets for help on using tickets.