如题 谢谢

解决方案 »

  1.   

    在   Visual   Basic   6.0   中,某些函数有两个版本,一个返回   String   值,一个返回   Variant   值。这些函数对通过美元符号   ($)   后缀来与   String   版本区分开来;例如,Chr   和   Chr$。
      

  2.   

    VB 是"基于COM"的开发语言, 而 Variant 是 COM 的通用数据类型. VB之所以保留字符串函数的两个版本, 是为了在别的开发语言(如 C++)中亦能使用VB做出开的COM产品(如ActiveX Dll/OCX等). 因为别的开发语言并没有类似VB的 String 类型(C++ 有一个 String, 但这个 String 与VB中的是不一样的, 仅仅是名字相同).
    建议在 VB 中使用字符串函数时带上$符号, 第一是为了向代码阅读者明确意图,第二可以避免 Variant 向 String 转换时的资源损耗(这点我没去验证是否存在隐式转换).很多"所谓的高手"都认为 $ 版本的函数是已经被MS抛弃的,是"残留的",个人对这观点表示很不屑——微软会呆B到这程度?以上全是我个人理解, 不代表官方.
      

  3.   

    VB常用定义解释:dim a! '定义单精度Single型变量a
    dim a@ '定义Currence型变量a
    dim a# '定义双精度Double型变量a
    dim a$ '定义a为字符串tring
    dim a% '定义a为整型变量integer
    dim a& '定义a为长整型变量long
      

  4.   

    Left()返回Variant类型变量(俗称万能变量),Left$()才返回真正的字符串String。滥用Variant类型会大大降低效率并且会导致运行时出错概率增高,在VB中应该尽量避免,除非你真的有需要变体的时候。在VBS中没有其它类型的变量,只能用Variant了,所以VBS中的字符串处理函数都是不带$的。