函数「查找失败时可能没有结果」,C++17 推荐的返回类型是?

C++

  1. A.返回 -1 或 nullptr 约定值,调用方按约定判断
  2. B.std::optional<T>:有值/无值语义明确,须显式检查
  3. C.抛异常,由调用方 catch 处理未找到
  4. D.返回 bool 并用输出参数传结果,最省开销