根据我的理解,有两种方法可以实现有时不返回结果的函数(例如,在ppl列表中找到的人).
* - 我们忽略原始ptr版本,与bool标志配对,以及未找到版本时的异常.
boost::optional<Person> findPersonInList();
Run Code Online (Sandbox Code Playgroud)
要么
std::unique_ptr<Person> findPersonInList();
Run Code Online (Sandbox Code Playgroud)
那么有什么理由可以优先于另一个吗?