从 Option Explicit 开始的零碎知识点(二)


每次开始敲一页代码的时候,经常会遇到“定义”这个东西Option Explicit,今天在写程序的时候碰到了一个不需要“Option Explicit”直接定义的,如下:


Option Explicit
Dim a,b,c,max                            '定义变量


Private Sub cmdcomp_Click()

  If a > b Then                                   '如果 a>b
    max = a                                       '将a赋值给max
  
  Else
  
    max = b                                       '否则将b赋值给b
    
  End If
  
  If c > max Then                                 '如果c>max
    max = c                                       '将c赋值给变量max
    
  End If
  
  txt1.Text = max                                 '将max输出到文本框中

End Sub

Private Sub cmdexit_Click()

  Unload Me                                       '卸载窗体

End Sub

Private Sub Form_Load()

  a = Val(InputBox("请输入第一个数"))       '输入第一个数后赋值给变量a
  b = Val(InputBox("请输入第二个数"))       '输入第二个数后赋值给变量b
  c = Val(InputBox("请输入第二个数"))       '输入第三个数后赋值给变量c

End Sub



于是在网上 查阅了一下Option Explicit 语句


在模块级别中使用,强制显式声明模块中的所有变量。如果没有使用 Option Explicit 语句,除非使用 Deftype 语句指定了缺省类型,否则所有未声明的变量都是Variant 类型的。

使用 Option Explicit可以避免在键入已有变量时出错,在变量的范围不是很清楚的代码中使用该语句可以避免混乱。



Option Explicit 语句示例
该示例使用 Option Explicit
语句来强制显式声明所有变量。如果试图使用一个未声明的变量,则会在编译时导致错误


Option Explicit
语句只能在模块级使用。

Option explicit '强制显式地声明变量。
Dim MyVar '声明变量。
MyInt = 10 '未声明的变量将产生错误
MyVar = 10 '已声明的变量则不会产生错误


举个很简单的例子来说,同样是在一栋大楼里,有会员卡的可以随意走动,没有会员卡的会被发现并且请出大楼,直白一点说就是:可以减少不必要的错误产生。

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...