Opened 3 years ago
Closed 3 years ago
#542 closed ожидаются исправления (задача сдана)
WW #11
Reported by: | bobrov.sergej | Owned by: | Святослав Власов |
---|---|---|---|
Component: | WW_vector | Version: | 1.0 |
Keywords: | Cc: | Святослав Власов |
Description
Change History (2)
comment:1 Changed 3 years ago by
Type: | ожидается проверка → ожидаются исправления |
---|
comment:2 Changed 3 years ago by
Resolution: | → задача сдана |
---|---|
Status: | assigned → closed |
Note: See
TracTickets for help on using
tickets.
Папочку .vscode не нужно добавлять в репозиторий
А еще нужно строго следовать тому, что требуется в задании. Мне пришлось пофиксить много твоего кода, чтобы он принялся тестирующей системой. Во-первых ты заюзал не тот неймспейс, во-вторых, зачем ты инклюдишь my_vector_impl.h в каждый .срр файл? Хотя он должен инклюдиться в конец my_vector.h. В-третьих, вся имплементация вектора должна быть в my_vector.h и my_vector_impl.h
После правок все простые тесты прошли кроме одного -- тест на вывод. У тебя не совпадает формат из-за лишних пробелов.
В более сложных тестах, где проверяется количество вызовов конструкторов у объектов, там всё совсем плохо -- очень много лишних копирований объектов. Подозреваю что это происходит из-за твоей магии с созданием в конструкторе вектора другого вектора. Не стоит так делать, это неочевидно, избыточно и порождает ошибки. Попробуй для проверки создать класс, который в статических переменных будет считать количество вызовов конструкторов (пустых и копий), потестируй свой вектор на нем и посмотри что у тебя в каких количествах вызывается.
Еще ты забыл проверку на самоприсваивание.
Еще у тебя конструктор копий не вызовет деструкторы для уже размещенных объектов, если вдруг конструктор копий какого-то элемента кинет эксепшн.
Пока 6/10