top | item 46426294

(no title)

nneonneo | 2 months ago

Not the OP, but note that adding a std::string to a POD type makes it non-POD. If you were doing something like using malloc() to make the struct (not recommended in C++!), then suddenly your std::string is uninitialized, and touching that object will be instant UB. Uninitialized primitives are benign unless read, but uninitialized objects are extremely dangerous.

discuss

order

IshKebab|2 months ago

That's not what was happening in this example though. It would be UB even if it was a POD.