int curpage = Convert.ToInt32(this.labPage.Text); //将ID=labPage的Label控件的text = 1的值转换为32位有符号整数,此为当前页码,
请问为什么页码要是32位有符号整数,整数不行吗?

解决方案 »

  1.   

    都可以,只是Convert.ToInt32这种方式比较常用!
      

  2.   

    个人理解为了平台的移植性.
    int不等同于Int32,int是特定于编程语言的写法。
    而Int16,Int32,Int64是特定于CLR公共语言运行时的写法,在.NET的编程规范中推荐使用此种写法,而代替int。
    对于64位程序开发,并不是说写成int或者非Int64就不能执行于64位元的 CPU上,因为我们所写的都是ManagedCode(托管代码),能否运行于64位元CPU上,是依赖于.Net FrameWrok本身,所以如果需要在64位元的CPU上运行托管代码,直接下载相应的.Net Framewrok 64位元版本就可以了。
    引.NET设计规范一书的原文如下:
    在程序设计中尽量避免使用语言特有的名字,对那些所谓的基本类型,CLR(公共语言运行时)平台上的编程语言(C#,VB.NET)都有自己的别名来称呼他们,比如int是C#中对于Int32的别名,但是为了确保框架能够充分利用跨语言协作--CLR的核心特性之一,应尽量避免在标识符中使用语言特有的类型名。
    最后总结: