3 ms·
That mdthod is what the author is explicitly trying to avoid - having invalid state representabld. Using optional I'd a much better solution
by maccard 5y ago
That mdthod is what the author is explicitly trying to avoid - having invalid state representabld. Using optional I'd a much better solution
- spacechild1 5y agoIn the end there's not much difference between the two. In both cases you essentially call a function/operator to verify the correctness of the object. std::optional doesn't really enforce a check, it only makes it more obvious to the user. On the other hand, returning std::optional means that it will always check the invariant, whether you need it or not, so there is a potential performance penalty. Just something to be aware of.