好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

VB.Net - Sub过程(子程序).pdf

4页
  • 卖家[上传人]:油条
  • 文档编号:12439279
  • 上传时间:2017-09-03
  • 文档格式:PDF
  • 文档大小:92.40KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • VB.Net - Sub过程(⼦程序)正如我们在上⼀章中提到的,Sub过程是不返回任何值的过程 我们在所有的例⼦中⼀直使⽤Sub过程Main 到⽬前为⽌,我们已经在这些教程中编写控制台应⽤程序当这些应⽤程序开始时,控制转到主⼦程序,它反过来运⾏构成程序主体的任何其他语句定义⼦过程Sub语句⽤于声明⼦过程的名称,参数和主体 Sub语句的语法是:[Modifiers] Sub SubName [(ParameterList)] [Statements]End SubModifiers 修饰符 :指定过程的访问级别;可能的值有:Public, Private, Protected,Friend, Protected Friend and information regarding overloading, overriding, sharing,and shadowing.SubName ⼦名 :表⽰该⼦的名字ParameterList 参数列表 :指定参数的列表⽰例以下⽰例演⽰了⼦过程CalculatePay,它接受两个参数⼩时和⼯资,并显⽰员⼯的总⼯资:Sub CalculatePay(ByRef hours As Double, ByRef wage As Decimal)'local variable declarationDim pay As Doublepay = hours * wageConsole.WriteLine("Total Pay: {0:C}", pay)End SubSub Main()'calling the CalculatePay Sub ProcedureCalculatePay(25, 10)CalculatePay(40, 20)CalculatePay(30, 27.5)Console.ReadLine()End SubEnd Module当上述代码被编译和执⾏时,它产⽣了以下结果:Total Pay: $250.00Total Pay: $800.00Total Pay: $825.00按值传递参数这是将参数传递给⽅法的默认机制。

      在这种机制中,当调⽤⽅法时,为每个值参数创建⼀个新的存储位置 实际参数的值被复制到它们中 因此,对⽅法中的参数所做的更改对参数没有影响在VB.Net中,可以使⽤ByVal关键字声明引⽤参数 下⾯的例⼦演⽰了这个概念:Module paramByvalSub swap(ByVal x As Integer, ByVal y As Integer)Dim temp As Integertemp = x ' save the value of x x = y ' put y into x y = temp 'put temp into y End SubSub Main()' local variable definition Dim a As Integer = 100Dim b As Integer = 200Console.WriteLine("Before swap, value of a : {0}", a)Console.WriteLine("Before swap, value of b : {0}", b)' calling a function to swap the values 'swap(a, b)Console.WriteLine("After swap, value of a : {0}", a)Console.WriteLine("After swap, value of b : {0}", b)Console.ReadLine()End SubEnd Module当上述代码被编译和执⾏时,它产⽣了以下结果:Before swap, value of a :100Before swap, value of b :200After swap, value of a :100After swap, value of b :200它表明,虽然它们在函数内部已更改,但值中没有变化。

      通过引⽤传递参数引⽤参数是对变量的存储器位置的引⽤ 当您通过引⽤传递参数时,与值参数不同,不会为这些参数创建新的存储位置 参考参数表⽰与提供给该⽅法的实际参数相同的存储器位置在VB.Net中,可以使⽤ByRef关键字声明引⽤参数 以下⽰例演⽰了这⼀点:Module paramByrefSub swap(ByRef x As Integer, ByRef y As Integer)Dim temp As Integertemp = x ' save the value of x x = y ' put y into x y = temp 'put temp into y End SubSub Main()' local variable definition Dim a As Integer = 100Dim b As Integer = 200Console.WriteLine("Before swap, value of a : {0}", a)Console.WriteLine("Before swap, value of b : {0}", b)' calling a function to swap the values 'swap(a, b)Console.WriteLine("After swap, value of a : {0}", a)Console.WriteLine("After swap, value of b : {0}", b)Console.ReadLine()End SubEnd Module当上述代码被编译和执⾏时,它产⽣了以下结果:Before swap, value of a : 100Before swap, value of b : 200After swap, value of a : 200After swap, value of b : 100W3Cschool()最⼤的技术知识分享与学习平台此篇内容来⾃于⽹站⽤户上传并发布。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.