- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数的调用 函数调用步骤如下: 步骤1:驱动form_Click()事件,程序运行如图①箭头 步骤2:当运行到triarea(a, b, c)语句时,form_Click()事件过程中断,VB会在整个工程文件中寻找同名的triarea()函数。如果没有找到,VB提示出语法错误。 步骤3:找到同名函数,调用,如图②箭头 步骤4:在函数调用时,进行参数的传递—实参和形参的结合。 triarea(a, b, c) 函数是调用函数。VB规定,调用函数中的参数称为实参。a, b, c就是实参。 triarea(x As Double, y As Double, z As Double) 函数是被调用函数。VB规定,被调用函数中的参数称为形参。x,y,z就是形参。 在实参和形参的结合时,必须遵循以下3条规则: 规则1.实参和形参个数相等 ; 规则2.实参和形参类型依次相等 ; 规则3.实参给形参依次传递 步骤5:如图③箭头,运行海伦公式 步骤6:海伦公式执行结束,triarea = Sqr((s - x) * (s - y) * (s - z) * s)的函数名得到函 数的值,程序返回到form_Click()事件过程的中断处,如图④箭头 步骤7:VB将函数名triarea的值赋值给变量s,继续执行form_Click()事件的余下代码,如图⑤箭头,直到end sub结束 Visual Basic 公共函数 VB公共函数:又称为内部函数,是系统提供的,可在任何一个VB程序中随时使用的程序段。每个程序段用于进行某个特定的运算和处理。 每个公共函数都有系统规定的函数名。函数名也是VB的关键字。 内部函数分5类: 1、数学函数 2、字符串函数 3、随机函数、格式输出函数 4、转换函数 5、日期和时间函数 数学函数 随机函数 Rnd[(x)] 产生0~1之间的双精度随机数。 说明: 若x0,则每次都使用x作为随机数种子得到相同的结果; 若x0,则以上一个随机数作为种子,产生序列中的下一个随机数; 若x=0,则产生与最近生成的随机数相同的数; 若省略参数x,则以上一个随机数作为种子,产生序列中的下一个随机数 产生[N1,N2]问随机数,可使用公式: Int(N2-N1+1)*Rnd +N2 例, 产生1~100的随机数: Int(Rnd *100)+1 转换函数 * 数组做为参数 2.被调过程可通过Lbound和Ubound函数确定实参数组的上、下界。 3.当用数组作形参时,对应的实参必须也是数组,且类型一致。 4.实参和形参结合是按地址传递,即形参数组和实参数组共用一段内存单元。 例如:定义了实参数组b(1 to 8),给它们赋了值,调用Sort()函数过程的形式如下: Sort b() 或 Call Sort(b() ) 实参数组后面的括号可以省略,但为便于阅读,建议一般不要省略为好。 * 使用过程注意事项 1. 确定自定义的过程是子过程还是函数过程 函数过程名有值,子过程名无值。 2.过程中形参的个数和传递方式的确定 过程中参数的作用是实现过程与调用者的数据通信。 (1)从主调程序获得初值,值传递。 (2)将结果返回给主调程序,地址传递。 3. 实参与形参结合时对应问题 个数、类型、位置、次序一一对应。 形参是值传递,对应实参可以是表达式、常量、数组元素。 形参是地址传递,对应实参只能是简单变量。 数组、记录类型、对象只能是地址传递。 * 过程的作用域 [Public|Private] Sub 子过程名([形式参数列表]) ….. End Sub 通用子过程和函数过程既可写在窗体模块中也可写在标准模块中,在定义时可选用关键字Private(局部)和Public(全局),来决定它们能被调用的范围。 * 过程的作用域 1、窗体/模块级过程: 加Private关键字的过程,只能被定义的窗体或模 块中的过程调用。 2、全局级过程: 加Public关键字(或缺省)的过程,可供该应用程序的所有窗体和所有标准模块中的过程调用。 按过程的作用范围来划分,过程可分为: * 作用域 模块级 全局级 窗体模块 标准模块 窗体模块 标准模块 定义方式 过程名前加Private,例如: Private Sub Subl (形参表) 过程名前加Public,例如: [Public] Sub Sub2 (形参表) 能否被本模块中其他过程调用 能 能 能 能 能否被本应用程序中其
文档评论(0)