关于变量

来源:互联网 发布:me域名续费 编辑:程序博客网 时间:2024/05/23 16:24

 变量的命名规则

   一般变量的命名应该遵循:范围+数据类型+标识名称


   其中范围表示变量的作用范围,如果是公有变量就用小写的g表示(global),局部变量则直接省略不写;
   数据类型则为像Integer,string等数据类型的小写的三码简写.以下列出包含范例数据类型的三码简写表,供大家参考使用.
   数据类型 缩写 范例
   Byte byt bytCount
   Boolean bln blnIsMale
   Integer int intAge
   Long lng lngNumber
   Single sng sngTax
   Double dbl dblIncome
   Short shr shrEnployeeNumber
   Decimal dec decIncome
   Date dat datMyBirthday
   Object obj objConn
   String str strMyName
   Stucture udt udtMyStructure
   注:udt就是英文user define type的简写


   标识名称:变量的主体,建议使用以英文大小写搭配,并以容易记忆,能够代表变量用意的名称,当然前提是标识名称必须是合法的(关于什么才是合法的名称请参考其他的资料),是如自己的名字MyName(按照命名规则就是strMyName).


变量的作用范围和生存期

   VB.NET是一种基于.NET平台面向对象的程序语言,具备面向对象技术的所有特性,在.NET平台下,所有包括数据类型,窗体等都是以类加以实现的,要更好理解变量的作用范围,那么就要以类的观点来看待变量的作用范围和生存期.而变量的作用范围和生存期取决两个因素:变量声明使用了哪个关键字和在何处声明.


   变量声明的关键字: Public|Protected|Friend|ProtectedFriend|Private|dim|static|shared]  

   Public关键字不能在函数,(事件)过程,区域内部(如:for..next等语句内)使用,一般只能在模块内声明为全局变量,如下的intCount;另外Public在类中声明的是公有变量(成员),表示可以被派生类继承的成员;
   Module module1
   Puplic intCount AS integer
   End Module


   用Private,dim声明的变量都是局部变量,它的范围取决与变量在何处声明.如在窗体声明区声明,则有效范围为窗体内部,以此类推,在(事件)过程,模块内声明,相对应的只有在(事件)过程,模块内有效.如过在类中声明变量,则为私有变量(成员),表示部可以被派生类继承的成员;


   static它声明的变量叫静态变量,具有局部的作用范围和全局的生存期,也就是说,它的可访问的范围取决与它在何处声明所对应的范围,而无论在何处声明,都提供整个程序的生存期(全局).需要注意的是:不能将 Static 修饰符用于结构中的局部变量


   Protected,Friend,Protected Friend关键字,则通常用在类中进行变量的声明,Protected(保护)的有效范围介于Public和Private之间:对于类以外的代码,它像私有成员一样无法访问,然而对于继承它的派生类来说,就像公有成员一样可以继承为自己的成员;Friend(友好)的有效范围则比Protected更大,只要是同个项目的文件和类.均可访问,换一种说法,就是程序集范围;Protected Friend则是Protected,Friend的结合:有效范围为派生类和同个项目内的文件.


  在类中shared声明的变量叫做共享成员,所谓的共享成员就是在类尚未产生实际的对象前,便可以访问或调用的属性和方法.

 

[example]

 Dim i As Int32
        Dim s As String
        Dim ss() As String
        Dim by As Byte
        Dim d As Double
        Dim b As Boolean
        Dim da As Date
        Dim c As Char
        Dim cc() As Char

        '整数操作
        i = Int32.Parse("¥123", Globalization.NumberStyles.AllowCurrencySymbol) '123
        i = Int32.MaxValue '2147483647
        i = Int32.MinValue '-2147483648
        by = Byte.Parse("1") '1

        '浮点数操作
        d = Double.PositiveInfinity '正无穷大
        d = Double.Epsilon '4.94065645841247E-324

        '布尔操作
        s = Boolean.TrueString 'True

        '日期操作
        da = Date.MaxValue '9999-12-31 23:59:59
        da = Date.MinValue '0:00:00
        da = Date.Now '2004-5-7 13:17:35
        b = Date.IsLeapYear(2004) 'True
        i = Date.DaysInMonth(2004, 5) '31

        '以下方法用于判断字符的特性
        Char.IsControl(c)
        Char.IsDigit(c)
        Char.IsLetter(c)
        Char.IsLetterOrDigit(c)
        Char.IsLower(c)
        Char.IsNumber(c)
        Char.IsPunctuation(c)
        Char.IsSeparator(c)
        Char.IsSurrogate(c)
        Char.IsSymbol(c)
        Char.IsWhiteSpace(c)
        Char.IsUpper(c)

        ''''Char转换
        Char.ToLower(c)
        Char.ToUpper(c)

        ''''字符串操作
        cc = s.ToCharArray()
        ss = s.Split(",")
        s = s.Substring(5, 3)
        s = s.Trim()
        Char.IsNumber(c)