LINUX.ORG.RU

История изменений

Исправление fsb4000, (текущая версия) :

std::vector<const std::string>

Это не работает в С++ вообще.

Никакой контейнер стандартной библиотеки не может иметь тип const T потому что allocator<const T> является ill-formed.

В Visual C++ такой код выдаст ошибку компиляции.

static_assert failed: 'The C++ Standard forbids containers of const elements because allocator<const T> is ill-formed.'

В будущем возможно будут добавлены static_assert в каждый контейнер для вывода более понятного сообщения: https://github.com/microsoft/STL/issues/180

https://timsong-cpp.github.io/cppwp/allocator.requirements#tab:utilities.allocator.requirements

T, U, C denote any cv-unqualified object type

Исправление fsb4000, :

std::vector<const std::string>

Это не работает в С++ вообще.

Никакой контейнер стандартной библиотеки не может иметь тип const T потому что allocator<const T> является ill-formed.

В Visual C++ такой код выдаст ошибку компиляции.

static_assert failed: 'The C++ Standard forbids containers of const elements because allocator<const T> is ill-formed.'

В будущем возможно будут добавлены static_assert в каждый контейнер для вывода более понятного сообщения: https://github.com/microsoft/STL/issues/180

Исправление fsb4000, :

std::vector

Это не работает в С++ вообще.

Никакой контейнер стандартной библиотеки не может иметь тип const T потому что allocator<const T> является ill-formed.

В Visual C++ такой код выдаст ошибку компиляции.

static_assert failed: 'The C++ Standard forbids containers of const elements because allocator<const T> is ill-formed.'

В будущем возможно будут добавлены static_assert в каждый контейнер для вывода более понятного сообщения: https://github.com/microsoft/STL/issues/180

Исходная версия fsb4000, :

std::vector

Это не работает в С++ вообще.

Никакой контейнер стандартной библиотеки не может иметь тип const T потому что allocator<const T> является ill-formed.

В Visual C++ такой код выдаст ошибку компиляции.

static_assert failed: 'The C++ Standard forbids containers of const elements because allocator<const T> is ill-formed.'