日期:2011-05-20  浏览次数:20471 次


类型可分为:值类型,引用类型
     值类型:直接存放真正的数据,值类型都有固定的长度,值类型的变量都保存在
堆栈(stack)上。作为值类型的变量,每个都有自己的数据,因此对一个变量的操作不会影响其他变量。

    引用类型:存储读数据的内存地址的引用,位于受管制的堆(Heap)上作为引用类型的变量可以引
用同一对象;因此对一个变量的操作会影响另一个变量所引用的同一对象。

值类型可分为3大类:
      基本型:
      整型
      int
        如:int i=123; //也可以写为:System.Int32 i=123;
      long
         如: long myLong=123;  //int型隐式转换为long型
     char
          如:char mychar='A'
     sbyte  byte   short   ushort uint ulong
   注意:(1) 书写一个常数时(如:23),默认为整型,若要表示非整型,可以用显式转换:
   如:sbyte k=1;
       int i=2;
       k=(sbyte)i;  //显式转换
       i=k;         //隐式转换
      (2) 不同整型转换原则:小范围类型可以隐式转换为大范围类型,大范围类型转换
    为小范围类型时要使用显式转换。

      浮点型
          float类型:32位浮点数,取值范围在
double类型:64位浮点数,取值范围在

      布尔型 bool
          true  false
          
      
        结构型
         struct 
                   如 public struct Point
                            {
                                int x;
                                 int y;
                                 string s;
                              }
结构和类的区别:
    结构是一个值类型(在栈上),而类是一个引用
类型(在堆上)。       

枚举型

  enum类型
常用形式有:
   enum days {Sun,Mon,Tue,Wed,Thu,Fri, Sat};
      //第一个成员值默认为0,第二个为1,……
   enum days {Mon=1,Tue,Wed,Thu,Fri, Sat, Sun };
      //第一个成员值从1开始
     enum days {mon=1,wed=3,sun,thu=8};
enum类型的使用示例:
class Test
 {
  enum days {Sun,Mon,Tue,Wed,Thu,Fri,Sat};
  static void Main()
  {
   Console.WriteLine(days.Wed);
   days myday=days.Fri;
   Console.WriteLine(myday);
   Console.Read();
  }
 }

引用类型

    引用类型包括:类、接口、数组、委托 等。

          string类型

            string myString = "some text";
            char chFirst = myString[2];  //结果为m