Izo*_*eak 3 c++ pointers return
如果你有一个通过查找数组中具有特定属性的对象返回指向对象的指针的函数,如果我在数组中找不到相应的对象,应该返回什么?而且,如果做得不好,这是否会对计划的安全性或稳定性造成风险?
如果你有一个通过在这些对象的数组中查找特定属性来返回指向对象的指针的函数,那么如果我在数组中没有找到该属性,我应该返回什么?如果做得不好,这是否会对计划的安全性或稳定性造成风险?
您有三种基本可能性:
std::out_of_range也可以.无论您选择什么,都必须记录在案,并尽可能与其他案例保持一致.
您可以返回调用者应该测试该情况nullptr的约定.或者你可以抛出异常.
你可能会使用一些智能指针.
使用C++ 11,您可以采用不同的方法:传递lambda函数来处理找到的对象.