我可以这样使用boost选项:
boost::optional<std::ofstream&> op_os_out1;
但是,如果我切换到c ++ 17的std :: optional,它将无法正常工作:
std::optional<std::ofstream&> op_os_out1;
编译器产量:
error: multiple overloads of '_Optional_payload' instantiate to the same signature 'void (__ctor_tag<bool>, std::basic_ofstream<char> &)'
这是一个错误吗?