C#基础知识 - 数据类型-值类型
来源:网络收集 点击: 时间:2024-05-08值类型的每个变量都有独立的存储空间;
因此,对一个变量执行的运算不会影响另一个变量( ref 和out 参数变量除外)

C#值类型又细分为简单类型、枚举类型、结构类型和可以为 null 的值类型

简单类型:
有符号的整型: sbyte 、 short 、 int 、 long无符号的整型: byte 、 ushort 、 uint 、 ulongUnicode 字符: charIEEE 二进制浮点: float 、 double高精度十进制浮点数: decimal布尔: bool


简单类型中各个类型的可变化范围。


枚举类型:格式为 enum E {...} 的用户定义类型
每个 enum 类型都有一个基础类型(必须是八种整型类型之一)
枚举列表中的每个符号代表一个整数值,一个比它前面的符号大的整数值。默认情况下,第一个枚举符号的值是 0。第 n 个符号值与第 n-1 个有关。

结构类型:格式为 struct S {...} 的用户定义类型
1、struct关键字用于创建结构体,结构体是值类型数据结构
2、使单一变量可以存储各种数据类型的相关数据
注意:
1、包含数据成员和函数成员的结构,与类类型相似
2、与类不同的是,结构是值类型通常不需要进行堆分配
3、不支持用户指定的继承,并且所有结构类型均隐式继承自类型 object
4、结构体中声明的字段无法赋予初值,类可以
5、通过struct构造函数创建实例,实际上是给struct的所有字段赋上了初值0。

ref关键字:用于将方法内的变量改变后带出方法外,例子如图。
注意事项:
方法的参数使用ref修饰时,调用该方法时也要加上ref关键字

out关键字:返回值多个,不限类型。
注意事项:
1、调用方法之前,需对out参数传递的变量声明。
2、使用out参数传递变量时,必须在方法内为其赋值,否则return的返回值没有意义。
3、方法的参数使用out修饰时,调用该方法时也要加上out关键字


值类型,每个变量都有自己的数据副本,占用独立的存储空间!
基础知识数据类型值类型版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_713148.html