加深对C#数据类型的认识

 

值类型:

值类型源于System.Value家族,每个值类型的对象都有一个独立的内存区域用于保存自己的值,值类型

  所在的内存区域称之为栈(Stack),只要在代码中修改它,就会在内存区域保存这个值。

 

 

引用类型:

 

引用类型源于 System.Object家族 ,在C#中引用类型主要包括数组,类和接口等

 

 

 

 

   结构:

定义:

 访问修饰符   struct  结构名

             {

    //结构体

    }

特点:

可以有字段也可以有方法

定义时,结构的字段不能被赋值

使用注意:

  在某些特定情况下可以不用new,直接定义结构对象即可(尽可能的去new)

  声明结构对象后,必须给结构体的成员赋初值

装箱和拆箱

  劝告:

  在实际开发之中我们应该减少装箱与拆箱的使用,因为二者的存储方式不同,转换的时候性能损失较大。

 

值传递和引用传递:

 

值传递:没有ref
情况一:值类型(int):值不会保留
情况二:引用类型(Student):值会保留

 

引用传递:有ref

 

情况一:值类型:值会保留
情况二:引用类型(Student):值会保留

 

posted @ 2018-04-02 16:52  我是怎么了  阅读(117)  评论(0编辑  收藏  举报