定义变量如 
dim sourcedir$
dim sourcedir
加与不加有什么区别?
显示效果一样吗?

解决方案 »

  1.   

    不一样,加个$就是说明这个变量是sting类型的.
    dim sourcedir$跟dim sourcedir as string是一样的.
      

  2.   

    $是字符串的申明符。早先在QB和BASIC下都是这样用的。$ String
    ! Single
    # Double
    % Integer
    & Long
      

  3.   

    pweixing(tom)说的有道理噢,俗话说有钱能使鬼推磨,解析器看到这个$,也许会跑的欢一点呢
      

  4.   

    KiteGirl(小仙妹) 说的对,不过不怎么推荐这么写,因为程序的可读性就差点了
      

  5.   

    上面看了,大致有2种说话:
    tztz520(午夜逛街) 和 KiteGirl(小仙妹) 的意见是定义string类型的;
    pweixing(tom)  和route2(路人乙)的意见是提高编译速度 ;
    我搜索了以前的帖子,其中一个类似的,内容如下:
     VB在内部使用最简单、最可能的数据类型保存符号数值,这意味着最通常的数字类型-比如0或者1-都按照Integer类型存储。
    如果在浮点表达式中使用这些常量,可以通过常量的合适类型来加速程序运行,就象下面的代码:
                               value# = value# + 1#.
    这个语句强迫编译器按照Double格式存储常量,这样就省却了运行时的隐含转换工作。还有另外的一种处理方法就是:在常量声明时就进行相应类型的定义,代码如下:
                               Const ONE As Double = 1我想大概就是这个意思吧,限制了sting类型,编译中间不需要多余的转换,节省了编译时间,虽然微乎其秒!
      

  6.   

    回复人: creazyfish(梳分头的鱼) ( ) 信誉:100  2004-11-11 18:55:00  得分: 0  
     
     
       KiteGirl(小仙妹) 说的对,不过不怎么推荐这么写,因为程序的可读性就差点了  
    ----------
    可读性差?我感觉可读性更好了
    VB中的变量声明不是很严格,像C中那样的话,系统不需要多做一步的
    不知道是不是这个意思?理解错误的话请谅解
      

  7.   

    dim sourcedir$ = dim sourcedir as string
    dim sourcedir = dim sourcedir as variant前者定义的是字符串类型,如果是对字符串操作的话,可以直接使用(也就是速度快罢);
    而后者如果和字符串操作,则要先转换成字符串类型,然后才能使用(多操作速度就慢)!
    -----结帖罢,呵呵
      

  8.   

    早期使用的Basic定义字符串没有太大区别
      

  9.   

    libralibra(食食物者为俊杰) 为正解KiteGirl(小仙妹)列出了几种数据类型的符号表示
      

  10.   

    同意上面的解释加$表示直接定义为STRING型
      

  11.   

    Dim a$
    'Dim a
    Private Sub Form_Load()
     MsgBox a
     MsgBox Len(a)
     MsgBox IsNumeric(a)
     MsgBox TypeName(a)
     MsgBox VarType(a)
    End Sub
    我就不说了,你把所有的值看看就什么都知道了!!!
    记着上边的交换定义