当前位置: 迅达文档网 > 党团工作 >

浅谈VB,6.0中变量、过程的定义、调用及作用域

| 来源:网友投稿

(呼伦贝尔学院信息科学分院,内蒙古 海拉尔 021008)
摘 要:在VB6.0这种面向对象的可视化程序设计中,深刻的理解和掌握变量的声明及作用域和过程的定义、调用及作用域极为重要,本文结合实例分别来介绍。
关键词:VB 6.0;变量;过程;作用域;调用
中图分类号:TP312  文献标识码:A  文章编号:1007—6921(2007)07—0088—02
1 变量的声明及作用域
1.1 变量的声明
      变量是程序执行过程中,其值可以改变的量用来存放程序中所需的数据。它的命名规则是以字母或汉字开头,后可跟汉字、字母、数字或下划线组成,长度小于等于255个字符;不能用VB中的关键字;不区分大小写。变量的声明分为显式声明和隐式声明(变量声明也称变量定义)。
      显式声明格式:Public|Private|Dim|Static 变量名 [AS 类型]或 Public|Private|Dim|Static变量名 类型符。
      注:由关键字Static声明的变量为静态变量,其他方式声明的为动态变量。静态变量的值在整个程序的运行中可以一直保留,而动态变量每次调用过程时都会重新初始化。
      隐式声明变量:未进行上述的声明而直接使用,其类型为 Variant 类型,赋值后由值的类型决定变量的类型。建议不使用。
      注意:由于VB允许隐式变量的使用,如果同一变量拼写出错,在隐式声明中无法查出,初学者可以在通用声明处加Option Explic语句可强制显式声明变量,要求所有变量必须先声明后使用。
1.2 变量的作用域
      变量的作用域是指变量的有效作用范围,即变量可以被访问的范围。
      VB中变量的作用域分为:
      局部变量:在过程内用声明的变量,只能在本过程中使用。
      窗体/模块级变量:在“通用声明”段中用Dim语句或用Private语句声明的变量,可被本窗体/模块的任何过程访问。 
      全局变量:在“通用声明”段中用Public语句声明的变量,可被本应用程序的任何过程或函数访问。
变量作用域对照表如表1。
2 过程的定义、调用和作用域
      VB应用程序是由过程组成的,除了系统中提供的内部函数过程和事件过程外,在应用程序的编写中,有时问题比较复杂,按照结构化程序设计的原则,可以把问题逐步细化,分成若干个功能模块,通过VB提供的自定义过程将功能模块定义成一个个过程,供事件过程多次调用。使用过程的好处是程序简练、便于调试和维护。在VB6.0中,自定义过程可分为以下几种:以Function保留字开始的为函数过程;以Sub保留字开始的为子过程;以Property保留字开始的为属性过程;以Event保留字开始的为事件过程。
       下面主要介绍函数过程和子过程的定义、调用及作用域。


2.1 过程的定义
2.1.1 函数过程的定义
      ①利用“工具”菜单下的“添加过程”命令——选择函数,定义生成一个函数过程的框架。②利用代码窗口直接定义,一般格式:
      Function 函数过程名([参数列表]) [As 类型]
      局部变量或常数定义
      函数过程名 = 返回值           
      Exit Function]
      语句块
      End Function
      函数过程名:命名规则同变量名;参数列表形式:[ByVal]变量名[()][As 类型]称为形参,仅表示参数的个数、类型,无值;函数名 = 返回值 在函数体内至少对函数名赋值一次;[Exit Function]:表示退出函数过程。
2.1.2 子过程的定义
      ①利用“工具”菜单下的“添加过程”命 令——选择子程序,定义生成一个子过程的框架。②利用代码窗口直接定义,一般格式:
      Sub 子过程名[(参数列表)]
      局部变量或常数定义
     [Exit Sub]
      语句
      End Sub
2.1.3 举例:进制转换,把二至十六任意进制的字符串转换成十进制整数
      ①用函数过程定义。
      Private Function convert(ByVal s As String, ByVal r As Integer)As Long "s 表示任意进制的字符串,r表示进制
      Dim n%,i%,c As String * 1,p&
      n = Len(s): p = 0
      For i = 1 To n
      c = UCase(Mid(s, i, 1))
      Select Case c
      Case “0” To “9”
      p = p * r + Val(c)
      Case “A” To “Z”
      p = p * r + Asc(c) - 55
      End Select
      Next i
      convert = p"函数过程名中存放转换后的十进制整数
End Function
      ②用子过程定义。
      Private Sub convert(ByVal s As String, ByVal r As Integer,D as Long) 
      Dim n%,i%,c As String * 1,p&
      n = Len(s): p = 0
      For i = 1 To n
      c = UCase(Mid(s, i, 1))
      Select Case c
      Case “0” To “9”
      p = p * r + Val(c)
      Case “A” To “Z”
      p = p * r + Asc(c) - 55
      End Select
      Next i
      D = p  "变量D中存放转换后的十进制整数
End Sub
2.2 过程的调用
2.2.1 函数过程的调用
      格式:变量名=函数过程名([参数列表]) 
2.2.2 子过程的调用
      ①用Call语句调用子过程,格式:Call子过程名 [参数列表]
      ②把过程名作为一个语句来使用,格式:子过程名[参数列表]
      参数列表:称为实参,形参个数相同,位置与类型一一对应可以是同类型的常量、变量、表达式。
2.2.3 举例:在窗体模块中编写命令按钮单击事件过程来分别调用进制转换的函数过程和子过程
      Private Sub Command1-Click()
      Dim s1 As String, r1 As Integer, d1 As Long
      s1 = Text1.Text :r1 = Val(Text2)
      d1 = convert(s1, r1)′函数过程的调用
      Call convert(s1, r1, d1)′子过程的调用
      convert s1, r1, d1′子过程的调用
      Text3.Text = d1
End Sub
2.3 过程的作用域
      过程随所处的位置不同,可被访问的范围,称为过程的作用域。
      VB中过程的作用域分为:
      窗体/模块级:加Private关键字的过程,只能被定义的窗体或模块中的过程调用。
      全局级:加Public关键字(缺省)的过程,可供该应用程序的所有窗体和标准模块中的过程调用。
      过程作用域对照表如下:


2.4 确定使用时应定义函数过程或子过程的一点建议
      由我们上面过程的定义和调用可知,子过程和函数过程的区别是前者子过程名无值;后者函数过程名有值。若过程有一个返回值,则习惯使用函数过程;若过程无返回值或返回多个值,一般使用子过程,通过实参与形参的结合带回结果。
      一般来说,一个函数过程可以被一个子过程代替,代替时只要改变函数过程定义的形式,并在子过程的形参中增加一个地址传递的形参来传递结果。但反过来。有一个函数过程去代替一个子过程,有时是不容易实现的。
[参考文献]
[1] 曾强冲,杨莉等.Visual Basic6.0 程序设计教程[M]. 北京:中国水利水电出版社,2001.
[2] 刘炳文.Visual Basic 程序设计教程[M].北京:清华大学出版社,2003.
[3] 刘瑞新,崔淼.Visual Basic程序设计教程[M].北京:机械工业出版社,2003.

推荐访问:浅谈 变量 调用 定义 作用

热门排行

党委党组落实全面从严治党主体责任规定指出本地区本单位发生重大违纪违法案件14篇

党委党组落实全面从严治党主体责任规定指出本地区本单位发生重大违纪违法案件14篇党委党组落实全面从严治党主体责任规定指出本地区本单位发生重大违纪违法案件篇1我

2022年五星支部创建实施方案5篇

2022年五星支部创建实施方案5篇2022年五星支部创建实施方案篇1为切实提高支部党建工作科学化水平、不断夯实党建基础,挖掘支部党建特色,创新支部党建工作做

七言绝句古诗精选【十首】

【 能力训练 导语】七言绝句是中国传统诗歌的一种体裁,简称七绝,属于近体诗范畴。此体全诗四句,每句七

2022年支部党员大会记录内容14篇

2022年支部党员大会记录内容14篇2022年支部党员大会记录内容篇120xx年度我校新党员发展工作已经开始。根据学校党委3月21日会议精神,今年新党员发展

统计工作如何为企业管理服务

作为企业管理重要组成部分的统计工作,在企业的经济运行中发挥着信息、咨询和监督三大作用,它为企业的经营

乡镇创建无毒社区工作方案

一、指导思想以“三个代表”重要思想为指导,认真贯彻落实上级精神,以禁吸戒毒为中心,全面落实禁毒工作责

四年级我家菜园日记500字

菜园子,就是种菜的地方。种菜的时候为了防止家禽进入菜地,于是农夫用篱笆或者栅栏将菜地围起来形成的一个

哈尔移动城堡电影观后有感范本

在观看完一部作品以后,相信你会有不少感想吧,这时我们很有必要写一篇观后感了。可能你现在毫无头绪吧,下

党支部2022年学习计划14篇

党支部2022年学习计划14篇党支部2022年学习计划篇1认真坚持“三会一课”制度,对于加强支部建设,提高党的战斗力、健全党的生活,严格党员管理,充分发挥党