关于var关键字用法的问题

Ele*_*ena 4 .net c#

我希望有类似的东西:

var somevar;
if (cond)
{
  var= something;
  // a lot of code
}
else var = somethingElse;
Run Code Online (Sandbox Code Playgroud)

然而,编译器尖叫认为应该在以这种方式使用var之前初始化var.怎么做.或者如何实现这种情况?

Jus*_*ner 8

你不能.使用var时,必须在声明中初始化变量...否则编译器无法知道要使用什么类型.

使用的变量var仍然是静态类型的...编译器只根据声明中的赋值推断出类型.如果您正在寻找动态类型的东西,dynamic如果您使用的是.NET 4.0 ,则可以尝试使用该类型.

在您的情况下,您需要在声明时指定类型.