VB 定义变量的问题

以前接触过ASP,使用的是vbscript,vbscript中的变量只有一个属性,是可变属性,他的定义方法是dim变量而在VB中dim变量AS属性纳闷,如果我在VB中也使... 以前接触过ASP,使用的是vbscript,vbscript中的变量只有一个属性,是可变属性,他的定义方法是
dim 变量
而在VB中
dim 变量 AS 属性
纳闷,如果我在VB中也使用vbscript中的方法定义变量,是否可行?有什么后果?而且在vbscript中有些变量无需定义同样可以使用,在VB中是否可以?VB初学者(以学习24小时!嘎嘎)
展开
 我来答
微软专家张海
推荐于2017-10-03 · TA获得超过748个赞
知道小有建树答主
回答量:564
采纳率:100%
帮助的人:0
展开全部
VB中可以
dim 变量

实际上变量是Variant 数据类型

Variant 数据类型

Variant 数据类型是所有没被显式声明(用如 Dim、Private、Public 或 Static等语句)为其他类型变量的数据类型。Variant 数据类型并没有类型声明字符。

Variant 是一种特殊的数据类型,除了定长 String 数据及用户定义类型外,可以包含任何种类的数据。Variant 也可以包含 Empty、Error、Nothing 及 Null等特殊值。可以用 VarType 函数或 TypeName 函数来决定如何处理 Variant 中的数据。

数值数据可以是任何整型或实型数,负数时范围从
-1.797693134862315E308 到 -4.94066E-324,正数时则从 4.94066E-324 到 1.797693134862315E308。通常,数值 Variant 数据保持为其 Variant 中原来的数据类型。例如,如果把一个 Integer赋值给 Variant,则接下来的运算会把此 Variant 当成 Integer 来处理。然而,如果算术运数针对含 Byte、Integer、Long 或 Single 之一的Variant 执行,并当结果超过原来数据类型的正常范围时,则在 Variant 中的结果会提升到较大的数据类型。如 Byte 则提升到 Integer,Integer 则提升到 Long,而 Long和Single 则提升为 Double。当 Variant 变量中有 Currency、Decimal 及 Double 值超过它们各自的范围时,会发生错误。

可以用 Variant 数据类型来替换任何数据类型,这样会更有适应性。如果 Variant 变量的内容是数字,它可以用字符串来表示数字或是用它实际的值来表示,这将由上下文来决定,例如:

Dim MyVar As Variant
MyVar = 98052

在前面的例子中,MyVar 内有一实际值为 98052 的数值。像期望的那样,算术运算子可以对 Variant 变量运算,其中包含数值或能被解释为数值的字符串数据。如果用 + 运算子来将 MyVar 与其他含有数字的 Variant 或数值类型的变量相加,结果便是一算术和。

Empty 值用来标记尚未初始化(给定初始值)的 Variant 变量。内含 Empty 的 Variant 在数值的上下文中表示 0,如果是用在字符串的上下文中则表示零长度的字符串 ("")。

不应将 Empty 与 Null 弄混。Null 是表示 Variant 变量确实含有一个无效数据。

在 Variant 中,Error 是用来指示在过程中出现错误时的特殊值。然而,不像对其他种类的错误那样,程序并不产生普通的应用程序级的错误处理。这可以让程序员,或应用程序本身,根据此错误值采取另外的行动。可以用 CVErr 函数将实数转换为错误值来产生 Error 值。

'''vbscript中有些变量无需定义同样可以使用,在VB中是否可以

Option Explicit 语句

在模块级别中使用,强制显式声明模块中的所有变量。

语法

Option Explicit

说明

如果使用,Option Explicit 语句必须写在模块的所有过程之前。

如果模块中使用了 Option Explicit,则必须使用 Dim、Private、Public、ReDim 或 Static 语句来显式声明所有的变量。如果使用了未声明的变量名在编译时间会出现错误。

如果没有使用 Option Explicit 语句,除非使用 Deftype 语句指定了缺省类型,否则所有未声明的变量都是 Variant 类型的。

注意 使用 Option Explicit 可以避免在键入已有变量时出错,在变量的范围不是很清楚的代码中使用该语句可以避免混乱。
果嘉悦漫卿
2020-01-10 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:26%
帮助的人:870万
展开全部
这属于结构体变量,
你可以使用变量的元素,例如
可以调用
abc.name
也可以给它赋值,
或者
abc.class
总之就是类似与数组元素,你可以使用其中的元素,但不能用一个整体来使用,但定义的时候可以整体定义,例如
dim
abc
as
student,定义了abc
那么abc就自动包含了2个元素,
一个name
一个是
class,
不知道这样解释是否明白。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CdPzh
2009-07-11 · TA获得超过3064个赞
知道小有建树答主
回答量:641
采纳率:0%
帮助的人:755万
展开全部
VB中对变量的定义与使用,前面几位已经说了.对变量不指定类型,多数情况下没有问题,但有时候也会带来麻烦.我空间中有个例子,你可以看一下.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lea3535
2009-07-10 · TA获得超过676个赞
知道小有建树答主
回答量:345
采纳率:0%
帮助的人:311万
展开全部
不定义类型可以的,但是不要用dim,直接用就好。比如,不用声明变量a,但你可以这样赋值:a=99,a="hello",.....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
twd2
2009-07-11 · TA获得超过557个赞
知道小有建树答主
回答量:1141
采纳率:0%
帮助的人:533万
展开全部
vb里dim 变量和dim 变量 AS 属性都行,vbscript里只有dim 变量才行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式