Подтвердить что ты не робот

Порядок уничтожения элементов контейнера STL

Предоставляет ли стандарт ISO С++ какой-либо порядок уничтожения объектов внутри контейнеров STL?

  • Элементы std::list/std::vector/std::map уничтожены, начиная с начала или конца контейнера?
  • Можно ли полагаться на std::map на хранение своих элементов внутри std::pair внутри, так что ключ в паре будет уничтожен до его значения (или наоборот)?
4b9b3361

Ответ 1

  • Не указано в стандарте.
  • Да, но это означает, что ключ уничтожается после его связанного значения.

Ответ 2

  • Не выбрано
  • Да, вы можете зависеть от std:: map, хранящего его элементы в std:: pairs, но я не вижу ничего, что указывает, что часть ключа std:: pair разрушается до части Value.