You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.NET中On Error Resume Next结合闭包静默编译失败问题

VB.NET编译异常:VS2022无错误提示但无法编译

以下VB.NET控制台应用无法完成编译,但Visual Studio 2022未显示任何错误或警告信息:

Module Program
    Sub Main()
        On Error Resume Next                    '0
        Dim a As String
        Dim b = Sub(_a) Console.WriteLine(_a)   '1
        Dim c = Sub(_a) a = _a                  '2
    End Sub
End Module

关键现象:

  • 注释掉第0行(On Error Resume Next语句)或第2行(赋值给c的Lambda表达式),程序即可正常编译
  • 第0行与第1行可以协同编译通过,但第0行与第2行同时存在时无法兼容

注:无需告知On Error Resume Next不推荐使用,本人更偏好C#,仅通过VB演示Golang风格错误处理(if err != nil检查)与旧版VB风格错误处理(On Error Resume Next激活下的If Err.GetException() IsNot Nothing Then)的相似性。

内容的提问来源于stack exchange,提问作者Sunshine Li

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 18:52:03