4 ms·
Not really. In the vast majority of cases this is all elided. There is no cost, either in lines of code or runtime. When you are decoupling memory lifetimes fr
by jandrewrogers 1y ago
Not really. In the vast majority of cases this is all elided. There is no cost, either in lines of code or runtime.
When you are decoupling memory lifetimes from object lifetimes it is pretty explicit. It isn't like this sneaks into your code on its own. You have to manage the implications of it yourself.
- nixpulvis 1y agoIt's not about cost of correct code, it's about accidental wrong code.
- jandrewrogers 1y agoThat’s really not a thing. By default it is correct, you have to go out of your way to make it incorrect.
- nixpulvis 1y agoIt's actually really easy... std::vector<int> a = {1,2,3}; // Added this without thinking about future uses of a. std::vector<int> b = std::move(a); use_vec(b); // ... use_vec(a);