0
A
回答
0
鉴于代码
try {
if (a)
throw 0;
else if (b)
throw 0;
else if (c)
throw 0;
throw 1;
} catch (int i) {
// << here
}
如果i
是0
,没有语言指定的机制来告诉它throw 0
扔。我们只能区分0
和1
投掷。有编译器特定的黑客(How can I print stack trace for caught exceptions in C++ & code injection in C++),但没有标准。
相关问题
- 1. MFC未处理的异常
- 2. 异常处理:多次处理异常
- 3. 如何处理异常处理代码中的异常?
- 4. php异常处理异常
- 5. 异常处理
- 6. 异常处理
- 7. 异常处理
- 8. 异常处理
- 9. 处理异常
- 10. 异常处理
- 11. 处理异常
- 12. 异常处理
- 13. 处理异常
- 14. 异常处理
- 15. 处理异常
- 16. 处理异常
- 17. 异常处理
- 18. 异常处理
- 19. 异常处理
- 20. 异常处理
- 21. 处理异常
- 22. 异常处理
- 23. 处理异常
- 24. 异常处理?
- 25. 异常处理
- 26. Iterable中的异常处理
- 27. MVVMLight中的异常处理
- 28. postgres中的异常处理
- 29. Powershell中的异常处理
- 30. ThreadPools中的异常处理
你不知道。如果你需要这种粒度,那么要么维护一个状态变量来标识每个步骤,要么围绕每个语句将大'try'分成单独的'try'块。 – dxiv
如果您需要知道,可能是您的代码不是异常安全的(使用* basic *或* strong *保证)。太少的信息给一个有用的答案。请提供具体的代码示例并解释它为什么对您很重要。 – IInspectable