dan*_*jar 5 c++ error-handling coding-style function return-type
我有一个简短的问题.给定一个返回类对象的函数作为结果,如果没有结果,应该返回什么(比如因为索引超出范围)?我可以返回一个新的"空"对象,但我怎么能指出没有成功的计算?
我想有一个共同的方法.
Dan*_*rey 13
C++中的常见方法是抛出异常或使用类似的包装器boost::optional
.
如果它是某种错误,则应抛出异常,如果boost::optional
函数返回空结果的有效用例,则该方法更合适.想到的一个例子是SQL的NULL.boost::optional
在我们的代码库中非常方便.
当值与预期结果不匹配时,您可以引发异常。
可以在http://www.cplusplus.com/doc/tutorial/exceptions找到教程
异常遵循 try 和 catch 原则。
程序“尝试”执行代码。如果发生意外情况,执行的代码会“抛出”一个对象、变量或其他任何东西,并且这将被捕获。在 catch 语句中,您可以放置代码,如果发生意外情况应该发生什么。
只需按照教程操作即可。
归档时间: |
|
查看次数: |
249 次 |
最近记录: |