G>1) Контейнеры STL не транзакционны. Т.е. если во время операции с контейнером не удалось выделить память, то после этого контейнер находится в неопределнном состоянии — уже не исходное, но еще не конечное. Соответственно типы, которые хранят данные в STL контейнерах тоже не будут транзакционными, если не прилагать специальных усилий и терять при этом эффективность.
Не совсем правда. Насколько я помню.
Контейнеры гарантируют компромисс, что выделенная память не будет потеряна, если произошло
исключение, при выделении памяти.
Но транзакционность, т.е. откат в состояние до начала операции, действительно не гарантируют.