C#编程基础 |
您所在的位置:网站首页 › 修复的类型是哪两类 › C#编程基础 |
目录 值类型 引用类型 值类型与引用类型的关系 区别 “装箱”和“拆箱” C#语言是一种强类型语言,在程序中用到的变量、表达式和数值等都必须有类型。在C#中,数据类型分为两大类:一类是值类型、一类是引用类型。 值类型所谓值类型就是包含一个实际数据的量。当定义一个值类型的变量是,C#会根据他所声明的类型,以堆栈方式分配一块大小相适应的存储区域给这个变量,随后对这个变量的读写操作就直接在这块内存区域进行。 C#中的值类型包括:简单类型、枚举类型和结构类型。废话不多说,一张表胜过千言万语。 类别描述值类型基本数据类型整型:int 长整形:long浮点型:float字符型:char布尔型:bool枚举类型枚举:enum结构类型结构:struct引用类型 一个引用类型的变量不存储它们所代表的实际数据,而是存储实际数据的引用。引用类型包括类、接口、数组、object、string 。直接上图。 注:object是C#中所有类型的根类,string类型是一个从object类直接继承的密封类型。 类别描述引用类型类基类:System.Object字符串:string自定义类:class接口接口:interface数组数组:int[],string[]值类型与引用类型的关系 区别 一、将一个值类型变量赋给另一个值变量类型时,将复制包含的值。引用类型变量的赋值只复制对对象的引用,而不复制对象本身。 二、C#中,值类型就分配在堆栈中,堆栈内存区域内保存着值类型的值,内存区域可以通过变量名来存取。引用类型分配在堆中,对象分配在堆时,返回的是地址,这个地址被赋值给引用。 (感觉跟VB中按值传递和按址传递有点类似,只是感觉,具体如何接下来还得查) 三、值类型不可能派生出新的类型,值类型不可能包含null值。 “装箱”和“拆箱”C#中用“装箱”和“拆箱”类实现值类型与引用类型之间的转换。 一、“装箱”就是将值类型包装成引用类型的处理过程。 二、“拆箱”它是将一个object类型转换成值类型。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |