c# 高级编程 (第31页)

130 阅读1分钟

变量

  • 除非用一个值初始化了变量,否则编译器不允许使用这个变量
  • 对变量初始化的强制要求,是c#强调安全性的一个例子。大多数现代编译器把没有初始化看做是warning, 而c#编译器把它看做error

变量初始化

  1. 类或结构中的字段,这种变量,如果没有显式初始化,那么在创建这些变量时,默认值为0
  2. 方法的局部变量,必须在代码中显式初始化,才能使用。编译器会检查所有可能路径,如果发现这个局部变量在初始化之前被使用,就会报error
  3. c#中实例化一个引用对象,要用new关键字

var 类型推断

  • 变量必须初始化
  • 初始化器不能为空
  • 初始化器必须放在表达式中
  • 不能把初始化器设置为一个对象,除非在初始化器中创建了一个新对象
  • 推断出的变量类型确定后不可更改。而且对该变量进行任何赋值时,强类型化规则决定了必须以推断出的类型为准