Opened 4 years ago
Closed 4 years ago
#836 closed ожидается проверка (задача сдана)
WW #12 chaykova.anastasiya
Reported by: | chaykova.anastasiya | Owned by: | Дмитрий Лапшин (lapshin) |
---|---|---|---|
Component: | WW_vector | Version: | |
Keywords: | Cc: |
Description
Change History (5)
comment:1 Changed 4 years ago by
Owner: | changed from Дмитрий Лапшин (lapshin) to chaykova.anastasiya |
---|---|
Summary: | WW #12 → WW #12 chaykova.anastasiya |
Type: | ожидается проверка → ожидаются исправления |
comment:2 Changed 4 years ago by
Owner: | changed from chaykova.anastasiya to Дмитрий Лапшин (lapshin) |
---|---|
Type: | ожидаются исправления → ожидается проверка |
Вроде через Makefile собирается
comment:3 Changed 4 years ago by
Owner: | changed from Дмитрий Лапшин (lapshin) to chaykova.anastasiya |
---|---|
Type: | ожидается проверка → ожидаются исправления |
Не компилируется: ты юзаешь ассёрт и острим без инклудов. Но если поправить: на всех тестах хотя бы валгринд (везде память течёт, деструкторы вызываешь?), а так и падает (капасити неправильное, где про степень двойки?).
Если починить что-то, то станет лучше, но гарантий исключений в reserve/resize всё равно не видно.
По стилю: пробелы, блоки вида try { /*...*/ } catch (...) { throw; }
бесмысленны. Лайк за стандартные функции.
Пока 3, даю попытку поправить.
comment:4 Changed 4 years ago by
Owner: | changed from chaykova.anastasiya to Дмитрий Лапшин (lapshin) |
---|---|
Type: | ожидаются исправления → ожидается проверка |
На некоторых capacity не был степенью двойки, потому что в стандартном векторе так (например, в конструкторе от n). И вроде в resize есть гарантия, там же только стандартные функции и они > If an exception is thrown during the initialization, the objects already constructed are destroyed in an unspecified order.
comment:5 Changed 4 years ago by
Resolution: | → задача сдана |
---|---|
Status: | assigned → closed |
А задание читать?)
Из-за ассёрта не собирается. Вычислить степень двойки можно было и без трюков над вещественными числами. reserve
: уничтожать старые элементы? Убедиться в степени двойки (кстати дублирование этого вычисления везде)? Копирующий конструктор: капасити. Дружелюбность к исключениям: плохая.
Зачем 0 константа?
5.
Спасибо за гуглтест, не собирается.