我有一个 getter 对象,它返回一个 Type 类型的对象,定义如下:
typedef boost::variant<int, std::string> Empty;
通常情况下,我既没有要返回的 int 也没有要返回的字符串,而是必须返回一个空状态。你认为我如何恢复这种状态?
a) typedef 一个空类型并将其添加到变体中:boost::variant<int, std::string, Empty>
.
b)返回类型()
c) 抛出异常
d) 返回一个 boost::shared_ptr,它在为空的情况下指向 NULL。