c#入门-默认值

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

初始值

在c#中一个局部变量必须先经过手动赋值初始值后才能使用。
而成员变量可以不手动赋值初始值。此时他们会以默认值存在。

default

default关键字可以帮你创建这种类型的默认值。
你可以在他右边加括号指示要使用哪一种类型的默认值。
如果赋值时的类型明确那么可以省略只写一个default。

var i1 = default(int);
int i2 = default;

数组的元素是成员变量是具有初始值的。

各种类型的默认值。

  • 所有数值类型他们的默认值是数字0的情形。
    • byte,short,int,long,float,double等等数字相当于为他们赋值为0
    • bool类型他的0情形是false
    • char是一个字符编码为0的字符。
  • 其他值类型
    • 任何枚举是他绑定数字类型为0的情形。
      请注意在枚举中可能不包含绑定为0的枚举。但他的默认值依然是0。
    • 任何结构类型是把他所有字段设置为default。
      请注意结构虽然有默认无参构造器但通过default不会经过这个构造器。
    • 可为null值类型可为null值类型是一个泛型结构类型。他里面有一个boolHasValue。用来指示当前是否有值。
      和一个Value字段用于在有值的时候储存真正的值。默认值会将这两个东西设为default。相当于为null的情形。
  • 引用类型
    任何引用类型的默认值都是null。包括string或其他数组。
    所以声明数组的数组时应当先对他们进行初始化。
int[][] arr = new int[6][];
for (int i = 0; i < arr.Length; i++)
{
	arr[i] = new int[6];
}

arr[2][3] = 12;
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6