我的方法可以返回某种指针(例如 boost::shared_ptr )并且这个指针可能为 NULL。有什么方法可以强制我的代码的用户检查代码是否为空?
此类事物的一些示例 - scals 的 Option 容器,可能是 boost 具有类似 boost::option 的东西?
最佳答案
您可以执行以下操作:
- 返回一个智能指针类型,如果被访问并设置为 NULL 则抛出异常。
- 抛出异常而不是返回 NULL 指针
- 返回一个 std::optional(或 boost::optional),它比指针更好地表达了意图(即“值可能丢失”)
关于c++ - 在 C++ 中强制执行 NULL 检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23216866/