查找和消除编译器错误

更新:2007 年 11 月

在本课中,您将学习如何查找并修复编译器错误。

在上一课中,您了解到当 Visual Basic 编译器遇到不可识别代码时会发生编译器错误,而这通常是由于键入时出错引起的。由于编译器错误会妨碍程序运行,所以您必须在尝试运行程序之前查找并修复或者调试那些错误。

查找并修复编译器错误

由于在修复错误之前程序不能运行,所以查找编译器错误实际上相当容易。按 F5 时,如果存在任何编译器错误,您将会看到一个对话框,其中显示“出现生成错误。是否继续?”。如果您选择“是”,将会运行上一个没有错误的程序版本;如果您选择“否”,程序将停止运行并出现“错误列表”窗口。

“错误列表”窗口显示有关编译器错误的信息,包括对错误的说明以及错误在代码中的位置。如果您在“错误列表”中双击错误,代码编辑器中将会突出显示有问题的那行代码。还可以按 F1 以显示“帮助”,并获取有关错误以及如何修复错误的更多信息。

Visual Basic 代码编辑器甚至还可以在您尝试运行程序前帮助您查找和修复编译器错误。通过使用一种称为“IntelliSense”的功能,Visual Basic 会在您键入代码时检查您的代码。如果发现可能导致编译器错误的代码,它会用蓝色波浪下划线标记出该代码。如果您将鼠标停留在那条线上,会显示一条描述该错误的消息。如果“错误列表”窗口可见,该错误信息也会在其中显示。

试一试!

查找并修复编译器错误

  1. 在“文件”菜单上选择“新建项目”。

  2. 在“新建项目”对话框的“模板”窗格中,单击“Windows 应用程序”。

  3. 在“名称”框中键入 CompilerErrors,然后单击“确定”。

    一个新的 Windows 窗体项目随即打开。

  4. 双击该窗体以打开代码编辑器。

  5. 在 Form_Load 事件处理程序中,添加下面的代码。

    End If
    
  6. 按 Enter。您将会在 End If 的下面看到一条蓝色波浪线。

    如果将鼠标停留在那条线上,您将会看到消息“‘End If’前面必须有匹配的‘If’”。

  7. 更改代码,使其类似于以下形式。

    If 1 < 2 Then
    End If
    

    注意蓝色波浪线已经消失了。

  8. 在 If...Then 语句后添加下面的新代码行。

    MgBox("Hello")
    
  9. 按 F5 运行程序。出现一个对话框,其中显示消息“出现生成错误。要继续并运行上次的成功生成吗?”

  10. 单击“否”。“错误列表”窗口将显示错误信息“未声明名称‘MgBox’”。

  11. 在“错误列表”中双击该错误信息,并将代码更改为 MsgBox("Hello")。

  12. 再次按 F5。这次程序应运行并使得出现一个消息框。

后续步骤

在本课中,您学习了如何查找并修复编译器错误。在下一课中,您将学习如何修复一种不同类型的错误:运行时错误。下一课:居然无效?查找并消除运行时错误

请参见

任务

了解您的 Bug:三种编程错误

查找错误:Visual Basic 调试介绍