【发布时间】:2013-12-18 00:52:54
【问题描述】:
对于 C++ 是否有与 Visual Basic 的 On Error Resume Next 等效的方法,如果发生错误,代码会在不提示用户的情况下继续执行?
理想情况下,希望捕获任何异常并将它们记录到 log.txt 文件并稍后检查,而不是让异常突然退出代码。
Visual Basic:
For i = 1 to 100
On Error Resume Next
ReturnedOpcVal[i] = OPC.ReadTag(“Server.Path.Tag” & "TagName_" & Cstr(i))
Next i
C++,我在想:
Try {
// Try looping through code here
For (i = 1; i <= 100; i++)
{
// Read OPC tags code here
}
}
Catch(…)
{
// log error to file code
}
【问题讨论】:
-
简短的回答是肯定的,就是这样:exceptions.
-
@Adriano - 不,你错了,如果在 C++ 代码中产生错误,循环将不会继续运行,在 VB 代码中它会。
-
@MattWilko 我没有说他的代码是正确的或他必须如何更改它(这就是为什么它是评论而不是答案),只是他必须使用异常(带有指向教程的链接,让他看看它们是如何工作的以及如何使用它们)。
标签: c++ vba visual-c++ vb6