Daily bit(e) of C++ | std::uninitialized_copy, std::uninitialized_fill, std::uninitialized_move, std::uninitialized_value_construct, std::uninitialized_default_construct, std::destroy
Daily bit(e) of C++ #230, The uninitialized algorithms that can create and destroy objects in raw memory blocks.
Manual lifetime management and creating objects inside untyped memory blocks is a very niche topic.
However, there are situations when std::vector isn't sufficient.
Fortunately, the C++ standard library offers a set of uninitialized algorithms that provide default, copy, move and value construction and destruction on top of raw memory.