Four levels of in-place initialization — Yosh Wuyts — Blog
The goal of in-place initialization is to enable the construction of types directly into a memory location without any additional moves or copies. When working with big types this can be more efficient and even prevent stack overflows. But some types are what we call address sensitive and so cannot be moved for correctness reasons.
Yoshua Wuyts