How do I put a non-copyable, non-movable, non-constructible object into a std::optional? Taking advantage of the conversion operator. Click here to read the article