码迷,mamicode.com
首页 > Windows程序 > 详细

深入C#数据类型

时间:2018-01-01 11:40:09      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:rgs   代码   操作   条件   zhang   ons   避免   stack   引用   

一:值类型和引用类型

 1.值类型:

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

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

  (对于值类型,不同的变量会分配不同的存储空间,并且在存储空间中存储的是该变量的值。赋值操作

          传递的是变量的值,改变一个变量的值不会影响另一个变量的值)

示例代码:

class program{

              static  void Main(string[] args)

{

int  heightZhang =170;

int heightLi= heightZhang;

Console.WriteLine("去年--张浩的身高是:" +heightZhang+",李明身高是:"+ heightLi);

 heightLi =180;

Console.WriteLine("今年--张浩的身高是:" +heightZhang+",李明身高是:"+ heightLi");

 

}

 2.引用类型:

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

二.结构体

  1.定义:

  访问修饰符  struct   结构名

  {

            //结构体

  }

  (1)结构体可以有字段,方法,字段不能赋初始值。

  (2)可以不new,但有条件,结构体中有成员变量和成员方法,成员变量没有赋值,调用成员方法,不new会报错,所以一般先new。

三:装箱和拆箱

 

  将值类型转换为引用类型的过程称为装箱,反之称为拆箱

  实际开发尽量避免 装/拆 箱

    原因:

      装/拆 箱都会降低程序性能

四:不同类型的参数传递

 

概述:

使用值传递,在方法中对参数值的更改在调用后不能保留.

使用ref方式传递,可以保留对参数值的更改.

 

深入C#数据类型

标签:rgs   代码   操作   条件   zhang   ons   避免   stack   引用   

原文地址:https://www.cnblogs.com/abc666/p/8166077.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!