Until C++14 use boost::optional.