Exception 异常处理/错误报告理论上不可能的情况是否必要?
这个问题我已经想了一两个月了,但我不能下结论。 我的问题是 理论上不可能的异常处理/错误报告案例是否必要? 我所说的“理论上不可能的情况”是这样的 有一些事情要做,所以线程进入一系列操作,但在for循环的最大迭代次数内找不到“某物” 例如,在红黑树中查找具有最小键的节点的简单代码Exception 异常处理/错误报告理论上不可能的情况是否必要?,exception,error-handling,Exception,Error Handling,这个问题我已经想了一两个月了,但我不能下结论。 我的问题是 理论上不可能的异常处理/错误报告案例是否必要? 我所说的“理论上不可能的情况”是这样的 有一些事情要做,所以线程进入一系列操作,但在for循环的最大迭代次数内找不到“某物” 例如,在红黑树中查找具有最小键的节点的简单代码 SNode* const GetNodeWithSmallestKey() const { SNode* pNode = m_pRootNode; for (unsigned
SNode* const GetNodeWithSmallestKey() const
{
SNode* pNode = m_pRootNode;
for (unsigned long long i = 0ull; i < m_ullElementCount; ++i)
{
if (pNode->pLeftChildNode == &m_leafNode)
return pNode;
pNode = pNode->pLeftChildNode;
}
return nullptr;
}
预期结果(返回pNode)未在最大迭代内执行,这是不可能的。
在这一点上,我想知道
Snode* pNode = GetNotWithSmallestKey();
if (pNode == nullptr)
return EFail;
这种处理是必要的
我的理由是必要的
如果我对算法或其他方面的理解有误,可能会出现这种情况
我的理由是不必要的
如果这种情况从未发生过,那么这样做的意义何在
那和这个有什么区别
int a = 10;
if (a != 10)
// DoSomething
这…毫无意义
真诚感谢您的善意解释
int a = 10;
if (a != 10)
// DoSomething