Прямая и единообразная инициализация в std :: allocator

Этот вопрос также был отправлен в Usenet, где он более уместен, но это более крупный и надежный форум.

std :: allocator :: construct определен для пересылки его параметра аргумента pack конструкции объекта с использованием круглых скобок, также известной как прямая инициализация.

Если бы он использовал фигурные скобки, то есть равномерную инициализацию, мы могли бы инициализировать агрегированные типы данных из таких функций, как std :: make_shared и container :: emplace . Кроме того, было бы приемлемо поместить содержимое списка инициализаторов в список аргументов такой функции, решив проблему вывода типа initializer_list в разделе {{1 }} пересылка.

Была ли эта альтернатива рассмотрена и отклонена? Не слишком ли поздно переходить на будущий стандарт? Похоже, это будет серьезное изменение, но не особенно ужасное.

7
задан Potatoswatter 19 October 2011 в 10:50
поделиться