Visual Basic变量、常数和数据类型及过程概述

2016-02-19 17:17 17 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Visual Basic变量、常数和数据类型及过程概述教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 编程语言 】

  变量、常数和数据类型概述

  在 Visual Basic 环境下进行计算时,常常需要临时存储数据。例如,可能想要计算几个值,将它们进行比较,并根据比较的结果对它们进行不同的操作。如果想要比较这些值,就要存储它们,但不必把它们存入属性。像大多数编程语言那样,Visual Basic 使用变量来存储值。变量具有名字(用来引用该变量所含的值的名词)和数据类型(确定变量可以存储的数据的种类)。数组可以用来存储建立了索引的相关变量集。

  常数也存储数值,顾名思义,在整个应用程序执行过程中,这些值都保持不变。常数的使用增加了代码的可读性,因为我们看到的是具有含义的名字而不是数字。Visual Basic 有许多内部常数,但也可以建立自定义常数。

  在 Visual Basic 中,数据类型控制了数据的内部存储。按照缺省规定,VisualBasic 使用了变体数据类型。在不需要 Variant 提供的灵活性时,还有许多其它可用的数据类型,它们可用来优化代码的速度和大小。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  变量

  在 Visual Basic 中执行应用程序期间,用变量临时存储数值。变量具有名字(用来引用变量所包含的值的词)和数据类型(确定变量能够存储的数据的种类)。

  可以把变量看作内存中存放未知值的所在处。例如,假定正在为水果铺编一个销售苹果的软件。在销售实际发生之前并不知道苹果的价格和销量。此时,可以设计两个变量来保存未知数,将它们命名为 ApplePrice 和ApplesSold。每次运行程序时,用户就这两个变量提供具体值。为了计算总的销售额,并且将结果显示在名叫 txtSales 的文本框中,代码应该是这样的:

  txtSales.txt = ApplePrice * ApplesSold

  每次根据用户提供的数值,这个表达式返回不同的金额。由于有了变量,就可以设计一个算式,而不必事先知道实际的输入是多少。

  在这个例子中,ApplePrice 的数据类型是货币,而 ApplesSold 的数据类型是整数。变量还可以表示许多其它数值,比如:文本数值、日期、各种数值类型,甚至对象也在此列。

  存储和检索变量中的数据

  用赋值语句进行计算,并将结果赋予变量:

  ApplesSold = 10         '将值 10

  '传给变量。

  ApplesSold = ApplesSold + 1

  '变量值

  '增一。

  注意,例子中的等号是赋值符,并不是等于操作符;它将数值 (10) 赋予变量 (ApplesSold)。

  声明变量

  声明变量就是事先将变量通知程序。要用 Dim 语句声明变量,Dim 语句提供了变量名:

  Dim variablename [As type]

  在过程内部用 Dim 语句声明的变量,只有在该过程执行时才存在。过程一结束,该变量的值也就消失了。此外,过程中的变量值对过程来说是局部的,也就是说,无法在一个过程中访问另一个过程中的变量。由于这些特点,在不同过程中就可使用相同的变量名,而不必担心有什么冲突和意想不到变故。

  变量名:

  1.必须以字母开头。

  2.不能包含嵌入的(英文)句号或者嵌入的类型声明字符。

  3.不得超过 255 个字符。

  4.在同一个范围内必须是唯一的。范围就是可以引用变量的变化域,如一个过程、一个窗体等等。

  由于 Dim 语句中的可选的 As type 子句,可以定义被声明变量的数据类型或对象类型。数据类型定义了变量所存储信息的类型。String、Integer 和Currency 都是数据类型的例子。变量也可以包含来自Visual Basic或其它应用程序的对象。Object、Form1 和 TextBox 都是 Visual Basic 对象类型或类的实例。

  详细信息 关于对象的更详细的信息,请参阅第九章用对象编程和第十章用部件编程。在本章后面的数据类型部分将详细讨论数据类型。声明变量的其它方式:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  不在过程内部,而在窗体、标准或类模块的声明段声明变量,这将使变量对模块中的所有过程有效。

  用 Public 关键字声明变量,这将使变量在整个应用程序中有效。

  用 Static 关键字声明一个局部变量,那么,即使过程结束,变量的值也仍然保留着。

  隐式声明

  在使用一个变量之前并不必先声明这个变量。 例如,可以书写这样一个函数,在其中就不必在使用变量 TempVal 之前先声

  明它:

  Function SafeSqr (num)

  TempVal = Abs (num)

  SafeSqr = Sqr (TempVal)

  End Function

  Visual Basic 用这个名字自动创建一个变量,使用这个变量时,可以认为它就是显式声明的。虽然这种方法很方便,但是如果把变量名拼错了的话,会导致一个难以查找的错误。例如,假定写了这样一个函数:

  Function SafeSqr (num)

  TempVal = Abs (num)

  SafeSqr = Sqr (TemVal)

  End Function

  乍看起来,这两段代码好像是一样的。但是因为在倒数第二行把 TempVal 变量名写错了,所以函数总是返回 0。当 Visual Basic 遇到新名字,它分辨不出这是意味着隐式声明了一个新变量呢,还是仅仅把一个现有变量名写错了,于是只好用这个名字再创建一个新变量。

  显式声明

  为了避免写错变量名引起的麻烦,可以规定,只要遇到一个未经明确声明就当成变量的名字,Visual Basic 都发出错误警告。    要显式声明变量,请

  在类模块、窗体模块或标准模块的声明段中加入这个语句:

  Option Explicit 

  -或-

  在工具菜单中选取选项,单击编辑器选项卡,再复选要求变量声明选项。这样就在任何新模块中自动插入 Option Explicit 语句,但不会在已经建立起来的模块中自动插入;所以在工程内部,只能用手工方法向现有模块添加 Option Explicit。

  如果对包含 SafeSqr 函数的窗体或标准模块执行该语句,那么 Visual Basic将认定 TempVal 和 TemVal 都是未经声明变量,并为两者都发出错误信息。随后就可以显式声明 TempVal。

  Function SafeSqr (num)

  Dim TempVal

  TempVal = Abs (num)

  SafeSqr = Sqr (TemVal)

  End Function

  因为 Visual Basic 对拼错了的 TemVal 显示错误信息,所以能够立刻明白是什么问题。由于 Option Explicit 语句有助于抓住这些类型的错误,所以最好在所有代码中使用它。

  注意 Option Explicit 语句的作用范围仅限于语句所在模块,所以,对每个需要 Visual Basic 强制显式变量声明的窗体模块、标准模块及类模块,必须将 Option Explicit 语句放在这些模块的声明段中。如果选择要求变量声明,Visual Basic 会在后续的窗体模块、标准模块及类模块中自动插入 Option Explicit,但是不会将它加入到现有代码中。必须在工程中通过手工将 Option Explicit 语句加到任何现有模块中。

  理解变量的范围

  变量的范围确定了能够知晓该变量存在的那部分代码。在一个过程内部声明变量时,只有过程内部的代码才能访问或改变那个变量的值;它有一个范围,对该过程来说是局部的。但是,有时需要使用具有更大范围的变量,例如这样一个变量,其值对于同一模块内的所有过程都有效,甚至对于整个应用程序的所有过程都有效。Visual Basic 允许在声明变量时指定它的范围。

  指定变量的有效范围

  一个变量在划定范围时被看作是过程级(局部)变量,还是模块级变量,这取决于声明该变量时采用的方式。

  过程内部使用的变量

  过程级变量只有在声明它们的过程中才能被识别,它们又称为局部变量。用 Dim 或者 Static 关键字来声明它们。例如:

  Dim intTemp As Integer

  - 或者 -

  Static intPermanent As Integer

  在整个应用程序运行时,用 Static 声明的局部变量中的值一直存在,而用Dim 声明的变量只在过程执行期间才存在。

  对任何临时计算来说,局部变量是最佳选择。例如,可以建立十来个不同的过程,每个过程都包含称作 intTemp 的变量。只要每个 intTemp 都声明为局部变量,那么每个过程只识别它自己的 intTemp 版本。任何一个过程都能够改变它自己的局部的 intTemp 变量的值,而不会影响别的过程中的intTemp 变量。

  模块内部使用的变量

  按照缺省规定,模块级变量对该模块的所有过程都可用,但对其它模块的代码不可用。可在模块顶部的声明段用 Private 关键字声明模块级变量,从而建立模块级变量。例如:

  Private intTemp As Integer

来源:http://www.tulaoshi.com/n/20160219/1614828.html

延伸阅读
循环结构 循环结构允许重复执行一行或数行代码。Visual Basic 支持的循环结构有: 1.Do...Loop 2.For...Next 3.For Each...Next Do...Loop 用 Do 循环重复执行一语句块,且重复次数不定。Do...Loop 语句有几种演变形式,但每种都计算数值条件以决定是否继续执行。如同 If...Thencondition 必须是一个数值或...
标签: MySQL mysql数据库
我们要把现实世界中的各种信息转换成计算机能理解的东西,这些转换后的信息就形成了数据。例如,某人的出生日期是“1987年5月23日”,他的身高是170厘米,等等。数据不仅包括数字、字母、文字和其他特殊字符组成的文本形式的数据,而且还包括图形、图像、动画、影像、声音等多媒体数据。但使用最多、最基本的仍然是文本数据。   &n...
通过限制焦点验证控件数据 Validate 事件和 CausesValidation 属性是在允许用户将焦点移开控件之前,串联使用以确认对控件的输入的。例如:假设有几个文本框和一个 Help 按钮的应用程序,当每个文本框接收焦点时,您想在文本框的特殊验证准则被满足之前阻止用户移动焦点;然而,您也想允许用户在任何时候都能单击 Help 按钮。 要做到...
标签: ASP
ASP只有一种数据类型那就是"variant "。它是一种特殊的数据类型能够根据它的使用表示很多不同种类的信息。因为它是ASP中唯一的数据类型,它也是ASP中所有函数返回值的唯一类型。它很简单的,"variant"数据类型能够表示数字或者是字符串。当你在ASP程序中把它当做是数字,它就自动转化为"Numeric",如果用它为字符串,它也同样就是"String"了。也...
VBScript只有一种数据类型,称为Variant。Variant是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript中唯一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型。 最简单的Variant可以包含数字或字符串信息。Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处...

经验教程

795

收藏

84
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部