变量
- 除非用一个值初始化了变量,否则编译器不允许使用这个变量
- 对变量初始化的强制要求,是c#强调安全性的一个例子。大多数现代编译器把没有初始化看做是warning, 而c#编译器把它看做error
变量初始化
- 类或结构中的字段,这种变量,如果没有显式初始化,那么在创建这些变量时,默认值为0
- 方法的局部变量,必须在代码中显式初始化,才能使用。编译器会检查所有可能路径,如果发现这个局部变量在初始化之前被使用,就会报error
- c#中实例化一个引用对象,要用new关键字
var 类型推断
- 变量必须初始化
- 初始化器不能为空
- 初始化器必须放在表达式中
- 不能把初始化器设置为一个对象,除非在初始化器中创建了一个新对象
- 推断出的变量类型确定后不可更改。而且对该变量进行任何赋值时,强类型化规则决定了必须以推断出的类型为准