C#隐式变量如果未初始化将如何存储

时间:2018-04-11 22:47:07

标签: c# data-structures

我被问到如果没有初始化会发生什么/ C#隐式变量将被存储的数据结构? 像var a; 在那之后我们永远不会使用var

但我无法在线找到答案或搜索文档 https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/implicitly-typed-local-variables

所以我认为这是一个技巧问题,因为var必须=同样的事情让编译器决定它是什么?

2 个答案:

答案 0 :(得分:3)

'var a;'是不合法的,因为它没有表明类型,所以编译器会拒绝它 如果你声明'int a'并在没有初始化的情况下使用它,那么编译器也会给你一个错误。

所以答案是“你不能从这里到达那里”。变量必须从指定的值中明确地或暗示地给出一个类型,并且在读取之前必须给出一个值。

答案 1 :(得分:1)

只是抬头 - 你的问题是

  

如果未初始化,会发生什么/ C#显式变量的数据结构

但是,您正在查看的文档是针对隐式变量 - 其中进行初始化,否则代码将无法编译。