VPS    微软    Win10    云市场    苹果    Office2016

VB编程基础教程3-理解变量的范围

 编程开发   2005-02-25

变量的范围确定了能够知晓该变量存在的那部分代码。在一个过程内部声明变量时,只有过程内部的代码才能访问或改变那个变量的值;它有一个范围,对该过程来说是局部的。但是,有时需要使用具有更大范围的变量,例如这样一个变量,其值对于同一模块内的所有过程都有效,甚至对于整个应用程序的所有过程都有效。visual basic 允许在声明变量时指定它的范围。
指定变量的有效范围
一个变量在划定范围时被看作是过程级(局部)变量,还是模块级变量,这取决于声明该变量时采用的方式。
范围 专用 公用
过程级 变量对于这种过程是专用的,在该过程中出现了这些变量。 不可使用。不能在一个过程中声明公用变量。
模块级 变量对于这种过程是专用的,在该过程中出现了这些变量。 变量可用于所有模块。

过程内部使用的变量
过程级变量只有在声明它们的过程中才能被识别。也称它们为局部变量。用 dim 或者 static 关键字来声明它们。例如:
dim inttemp as integer
— 或者 —
static intpermanent as integer
在整个应用程序运行时,用 static 声明的局部变量中的值一直存在,而用 dim 声明的变量只在过程执行期间才存在。
对任何临时计算来说,局部变量是最佳选择。例如,可以建立十来个不同的过程,每个过程都包含称作 inttemp 的变量。只要每个 inttemp 都声明为局部变量,那么每个过程只识别它自己的 inttemp 版本。任何一个过程都能够改变它自己的局部的 inttemp 变量的值,而不会影响别的过程中的 inttemp 变量。
模块内部使用的变量
按照缺省规定,模块级变量对该模块的所有过程都可用,但对其它模块的代码不可用。可在模块顶部的声明段用 private 关键字声明模块级变量,从而建立模块级变量。例如:
private inttemp as integer
在模块级,private 和 dim 之间没有什么区别,但 private 更好些,因为很容易把它和 public 区别开来,使代码更容易理解。
所有模块使用的变量
为了使模块级的变量在其它模块中也有效,用 public 关键字声明变量。公用变量中的值可用于应用程序的所有过程。和所有模块级变量一样,也在模块顶部的声明段来声明公用变量。例如:
public inttemp as integer
注意 不能在过程中声明公用变量,只能在模块的声明段中声明公用变量。
详细信息 有关变量的其它信息,请参阅 “高级变量主题”。

各位正在潜水的同学请注意,有 1 位无聊人士 在异次元附近海域出没!
  • 新手学学呵呵!

    10 10
     





评论内容 (*必填):
Ctrl + Enter 快速提交