MSDN and other places say that uninitialized_copy
provides a strong exception guarantee, but other C++ references don't.
Is this in fact guaranteed by C++, or not?
MSDN and other places say that uninitialized_copy
provides a strong exception guarantee, but other C++ references don't.
Is this in fact guaranteed by C++, or not?
Yes, C++03 does provide this guarantee, but it's worth double-checking for your implementations.
From a draft copy I had on my machine, 20.4.4:
So yes, that means the "possible implementation" you see on some pages can be incorrect.