VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 软件工程篇-Const与#Const的对比
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:7841, 日期:2000-10-21
软件工程篇-Const与#Const的对比

作 者 : 甘冀平




   本文是编译稿件,原文出处:http://www.vb-helper.com/tips6.htm

   #Const用于在编译时被编译器使用定义一个编译变量,它要与#If ... 语句一起使用,从而决定哪些代码被包含于编译后的程序中。在下面的代码中,第二个MsgBox语句被完整地从代码中移去,这就使编译后的程序变得小了些。

    #Const DEBUG_VERSION = True
    
    #If DEBUG_VERSION Then
        MsgBox "This is a debug version"
    #Else
        MsgBox "This is the final version"
    #End If

   Const用于定义一个数值,当遇到它时,Visual Basic将替代为常量符号。比如,下面的代码使用一个常量来创建一个更易读的信息。通常,常量要远远前于使用它的代码之前。

    Const MSG = "Hello"
        :
    MsgBox MSG

   注意,你不能按照这种方法使用#Const,比如,下面的代码是错误的:

    #Const MSG = "Hello"
        :
    MsgBox MSG

   最后请注意,在编译时Const数值是不明确的,所以,它们都是默认数值。比如,一个Boolean常量在编译时没有初始化,默认是False,即使你定义常量的数值为True!猜一猜执行下面的代码会显示什么?试一试然后看看你是否想正确了:

    Private Sub Form_Load()
    #Const A = True
    Const B = True
    
        #If A Then
            MsgBox "A is True"
        #Else
            MsgBox "A is False"
        #End If
    
        #If B Then
            MsgBox "B is True"
        #Else
            MsgBox "B is False"
        #End If
    
        If B Then
            MsgBox "B is True"
        Else
            MsgBox "B is False"
        End If
    End Sub

   所以,编程原则是:

与#If一起配合使用#Const
与If一起配合使用Const
不要混和使用2者