GCC 4,9 теперь есть поддержка n3696 (динамические массивы с автоматическим хранением). n3662 говорит:
В N3497 Размерные массивы с автоматическим хранением
В продолжительности Jens Maurer предлагает массивы с ограничением времени выполнения. Эти массивы
должны быть std :: dynarray как обычные массивы фиксированного размера для std :: array.
В этом список рассылки, Джонатан Уэйкли говорит:
Мы должны добавить в руководство таблицу состояний C ++ 14, но пока
Вот краткий обзор состояния библиотеки.…
Эти отсутствуют:
- N3672 Предложение добавить служебный класс для представления необязательных объектов.
- N3655 TransformationTraits Redux
- N3662 C ++ Динамические массивы
- N3644 Итераторы нулевого пересылки
Черты одна проста, но немного утомительна и итераторы один
вероятно влияет только на режим отладки, но два других являются существенными
кусочки работы. Кто-нибудь планирует работать или
еще?
Тем не менее, n3662 также говорит:
Вместо принятия C массивов переменной длины мы предлагаем
определить новое средство для массивов, где число элементов связано
на строительстве. Мы называем эти динамические массивы, dynarray.
Не могу найти dynarray
используя быстрые клавиши CTRL + F на gcc
страницы. Так и есть dynarray
будет реализован в ближайшее время, и будет variable length arrays
остаться или это исчезнет?
std::dynarray
вначале предполагалось использовать c ++ 14. Однако позже было решено, что std::dynarray
будет перемещен в «Массив TS», который также может включать в себя некоторые std::array_view
учебный класс. Основная причина в том, что в некоторых случаях комитет не согласовал некоторые моменты, касающиеся распределения кучи и распределения стека (что если вы попытаетесь выделить std::dynarray
с new
). Поэтому было решено, что это будет отложено. Есть еще некоторые текущие дискуссии о том, что должно быть сделано.
Класс не будет готов к C ++ 14. Вероятно, он будет поставляться с массивами TS или C ++ 17.
Обновить: std::dynarray
не было в C ++ 14, не будет в C ++ 17, Arrays TS был прекращен, поэтому, вероятно, не будет ничего близкого std::dynarray
в стандарте в ближайшее время. Если я правильно понимаю текущую позицию стандарта, а не волшебные массивы размера во время выполнения, комитет скорее придумает общее решение для классов размера во время выполнения, но каждый предложение до сих пор было отклонено.
Других решений пока нет …