You can sort of work around it by placement new, but it’s still hugely inconvenient in the general case since the thing could have strict alignment requirements.
Oh and not just stack, it also breaks global variables because destructors often get run for those when something gets unloaded or the program stops.
Finally, because C++ gives you tons of control over how assignment works, it’ll probably break being able to use things within other objects unless you give those mark those classes as friend.
Oh and not just stack, it also breaks global variables because destructors often get run for those when something gets unloaded or the program stops.
Finally, because C++ gives you tons of control over how assignment works, it’ll probably break being able to use things within other objects unless you give those mark those classes as friend.