オブジェクトを std::vector に移動しているときにメモリ割り当てが失敗し、bad_alloc がスローされた場合、std::vector は、移動されたオブジェクトが変更されていない/まだ有効であることを保証しますか?
例えば:
std::string str = "Hello, World!";
std::vector<std::string> vec;
vec.emplace_back(std::move(str));
/* Is str still valid and unaltered if the previous line throws? */