【问题标题】:Significance of an ampersand in VB6 function name?VB6 函数名中的 & 符号的意义?
【发布时间】:2012-02-21 06:26:13
【问题描述】:

我刚收到一堆遗留的 VB6 (!) 代码,我不断看到函数名称末尾带有 & 符号,例如 Private Declare Function ShellExecute& . . .

我无法找到对此意义的答案,也无法检测到任何使用中的模式或由此命名的函数的签名。

任何人都知道那些尾随的&符号对编译器是否意味着什么,或者至少是否有一些我遗漏的约定?到目前为止,我把它写成一个奇怪的程序员,但我想确定它背后是否有任何意义。

【问题讨论】:

    标签: vb6 sigils


    【解决方案1】:

    表示函数返回一个Long(即32位整数)值。

    相当于

    Declare Function ShellExecute(...) As Long
    

    后缀的完整列表如下:

    Integer %
    Long    &
    Single  !
    Double  #
    Currency @
    String  $
    

    【讨论】:

      【解决方案2】:

      正如 Philip Sheard 所说,它是 Long 的标识符类型。它们仍然存在于 .Net 中,请参阅此 MSDN link 和此 VB6 article

      来自第二篇:

      形成有效的VB变量名的规则如下:

      (1) 第一个字符必须是字母 A 到 Z(大写或 可以使用小写字母)。后续字符可以是字母, 数字或下划线 (_) 字符(无空格或其他字符 允许)。

      (2) 最后一个字符可以是“类型声明字符”。仅有的 一些变量类型可以使用它们,如下图:

      Data Type  Type Declaration Character  
      
      String         $  
      Integer        %  
      Long           &  
      Single         !  
      Double         #  
      Currency       @    
      

      类型声明的使用 不鼓励使用 VB 中的字符;现代风格是使用 数据声明语句中的“As”子句。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-01-27
        • 1970-01-01
        • 2015-07-05
        • 2012-01-26
        • 1970-01-01
        • 2019-07-02
        • 1970-01-01
        相关资源
        最近更新 更多