I have a situation where a function must return a value taken from a table. A cell in this table (let\'s assume the table just works...) may contain a value, or it might not. T
Just want to add that before C++17 and the standardization of variant
and monostate
, there is already boost::blank to solve the exact same issue for boost::variant
.
By convention, if boost::blank
is used, it should always be the first template argument, so that a default-constructed variant is empty and checking for emptyness is done with .which() == 0
.