VB编程基础教程3-理解变量的范围
- 11.11 好价整理 | 腾讯视频+京东 ¥148 | 百度网盘年卡+芒果 ¥179 | 哔哩哔哩年卡 ¥88
- 夸克网盘 SVIP 年卡 | WPS 会员四年 | QQ会员买一得14 | 爱奇艺 15 个月 | 迅雷白金会员
变量的范围确定了能够知晓该变量存在的那部分代码。在一个过程内部声明变量时,只有过程内部的代码才能访问或改变那个变量的值;它有一个范围,对该过程来说是局部的。但是,有时需要使用具有更大范围的变量,例如这样一个变量,其值对于同一模块内的所有过程都有效,甚至对于整个应用程序的所有过程都有效。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
注意 不能在过程中声明公用变量,只能在模块的声明段中声明公用变量。
详细信息 有关变量的其它信息,请参阅 “高级变量主题”。
/ 关注 “异次元软件世界” 微信公众号,获取最新软件推送 /
如本文“对您有用”,欢迎随意打赏异次元,让我们坚持创作!
赞赏一杯咖啡