Почему операторы назначения перемещения контейнеров не исключаются?

Я заметил, что 'std::stringс (действительноstd::basic_strings) оператор присваивания перемещенияnoexcept, Это имеет смысл для меня. Но потом я заметил, что ни один из стандартных контейнеров (например,,,,std::vectorstd::dequestd::liststd::map) объявляет свой оператор присваивания перемещенияnoexcept, Это имеет меньшее значение для меня.std::vectorнапример, обычно реализуется в виде трех указателей, и указателям, безусловно, можно назначать перемещение без исключения. Тогда я подумал, что, возможно, проблема с перемещением контейнераРаспределитель, ноstd::stringу меня тоже есть распределители, так что если бы это было проблемой, я быЯ ожидаю, что это повлияет.std::string

Так почему жеstd::stringОператор присваивания ходовnoexceptИ все же операторы присваивания перемещения для стандартных контейнеров не являются?

Ответы на вопрос(3)

Ваш ответ на вопрос