CSharp变量和数据类型的转换
分类
值类型
什么样的变量是值类型呢?看值类型的特点吧
1.值类型变量都存储在堆栈中。2.访问值类型变量时,一般都是直接访问其实例。
3.每个值类型变量都有自己的数据副本,因此对一个值类型的变量的操作不会影响其他的变量。
4.复制值类型变量时,复制的是变量的值,而不是变量的地址。
5.值类型变量不能为null,必须具有一个确定的值。
引用类型
4.引用类型变量是由垃圾回收机制来管理的。
5.多个引用类型变量都可以引用同一个对象,这种情形下,对一个变量的操作会影响另一个变量所引用的同一对象。
值类型
什么样的变量是值类型呢?看值类型的特点吧
1.值类型变量都存储在堆栈中。2.访问值类型变量时,一般都是直接访问其实例。
3.每个值类型变量都有自己的数据副本,因此对一个值类型的变量的操作不会影响其他的变量。
4.复制值类型变量时,复制的是变量的值,而不是变量的地址。
5.值类型变量不能为null,必须具有一个确定的值。
引用类型
1.必须在托管堆中为引用类型变量分配内存。
2.必须使用new关键字来创建引用类型变量。
3.在托管堆中分配的每个对象都有与之相关联的附加成员,这些成员必须被初始化。4.引用类型变量是由垃圾回收机制来管理的。
5.多个引用类型变量都可以引用同一个对象,这种情形下,对一个变量的操作会影响另一个变量所引用的同一对象。
6.引用类型被赋值之前的值都是null。
1.定义变量时,数据类型后面添加“?”
在变量类型后添加“?”表示可空值类型。
例如:
int a=null; //无法将 Null 转换成“int”,因为它是一种不可以为 null 值的类型 int? a=null; //成功编译
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 分享几个免通过修改host访问外网的工具
- 下一篇: 步步LINUX C--进程间通信(一)管道