【发布时间】:2016-05-18 14:09:12
【问题描述】:
class Base {};
class Derived : public Base {};
void func(boost::optional<Base>&) {}
int main () {
boost::optional<Derived> x;
func(x);
}
func 是否接受两个可选参数:base 和 derived?
【问题讨论】:
-
在寻找其他东西时,我偶然发现了“通过成员模板强制”成语 (en.wikibooks.org/wiki/More_C%2B%2B_Idioms/…),它非常适合这种特殊情况。但是
optional(不像shared_ptr例如)不支持它。
标签: c++ boost boost-optional