VB.NET可选参数的默认值必须是一个常数表达式。
创新互联专注于尖扎网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供尖扎营销型网站建设,尖扎网站制作、尖扎网页设计、尖扎网站官网定制、成都小程序开发服务,打造尖扎网络公司原创品牌,更为您提供尖扎网站排名全网营销落地服务。
过程定义中跟在可选参数后的每个参数也都必须是可选的。
下面的语法显示带VB.NET可选参数的过程声明:
Sub sub name(ByVal parameter 1 As data type 1,
Optional ByVal parameter 2 As data type 2 = default value)
调用带VB.NET可选参数的过程
过程在运行时无法检测到给定的参数是否已被省略,或者调用代码是否已显式提供默认值。如果需要弄清楚这一点,可以设置一个不可能的值作为默认值。下面的过程定义了可选参数 office,并测试其默认值 QJZ 以查看它在调用中是否已被省略:
Visual Basic
Sub notify(ByVal company As String, Optional ByVal office As String = "QJZ")
If office = "QJZ" Then
Debug.WriteLine("office not supplied -- using Headquarters")
office = "Headquarters" End If
' Insert code to notify headquarters or specified office.
End Sub
如果可选参数是像 String 这样的引用类型,只要它不是该变量所预期的值,就可以使用 Nothing 作为默认值。
VB.NET可选参数和重载
定义带可选参数的过程的另一种方法是使用重载。如果有一个可选参数,可以定义过程的两个重载版本,一个接受此参数,另一个则不带参数。此方法随可选参数数目的增加而变得更复杂。然而,这样做的优点是可以完全确定调用程序是否提供了每个VB.NET可选参数。
Dim a as integer 声明一个名为a的局部变量,就是只能在一个Sub里面使用的Private a as integer 声明一个能在一个窗体中共同使用的变量Public a as integer 声明一个能在所有窗体和模块中使用的变量Private Const a=1 声明一个能在一个窗体中使用的常量并且值为1Public Const a=1 声明一个能在所有窗体和模块中使用的常量并且值为1
vb中的常量可以分为1,直接常量 2,符号常量
1,直接常量可分为 数值常量 字符串常量 布尔常量 日期常量 (当然直接常量是不用定义的)
2,符号常量可分为 系统内部常量和自定义常量(系统内部常量也不用自己定义)
自定义常量格式如下:
[Public|private]const
常量名 [as
数据类型]=表达式
例如:Const
PI=3.1415926
在下面的程序中用到PI就代表3.1415926
符号常量是用一个符号名来代替数值和字符串。符号名规定是:40个字符以内,第一个必须是字母,其后可以由字母、数字和下划线组成,其中不区分大小写。符号常量要先定义,后使用。定义符号常量的一般格式为:
格式:[Global]Const符号常量名=表达式[,符号常量名=表达式…]
功能:设置符号常量为表达式的值。
说明:Global(全局的)项选择时,表示在整个程序中都可以使用常量。
其中表达式由文字常量、算术运算符(除乘方运算符“以外)、逻辑运算符组成,也可以使用字符串。表达式不能使用字符串连接运算和用户定义的函数或内部函数。例如:
ConstI%=2,J=3-定义一个整型、一个长整型符号常量
Conststr=--srting---定义一个串常量’
Constpie=3.1415926-定义一个单精度常量
Constdupie=2六pie’定义一个单精度常量
可以在任何用表达式的地方使用符号常量。有时使用符号常量比使用变量更方便。符号常量的特点如下:
符号常量在整个模块中只需要定义一次。符号常量定义后其值能被改变。在独立的程序中,使用符号常量比使用变量能产生更有效的代码。使用常量便于程序的修改。