c# - 关于 var 关键字用法的问题

标签 c# .net

我想要这样的东西:

var somevar;
if (cond)
{
  var= something;
  // a lot of code
}
else var = somethingElse;

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

最佳答案

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

使用 var 定义的变量仍然是静态类型的……编译器只是根据声明中的赋值推断类型。如果您正在寻找动态类型的内容,并且您使用的是 .NET 4.0,则可以尝试使用 dynamic 类型。

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

关于c# - 关于 var 关键字用法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4471704/

相关文章:

c# 如何在客户端管理 wcf 服务代理生命周期?

c# - 通过 UPC 查找商品的亚马逊网络服务

c# - 如何在 WPF 中使用带有动态 View 的选项卡控件创建动态选项卡

c# - 根据 ID 从列表中查找项目

C# - 将公钥 blob 导入 ECDiffieHellmanCng

c# - .NET 必须指定有效信息?

c# - 为什么默认的字符串比较器无法保持传递一致性?

c# - 在 asp.net 中以编程方式设置 "expires"http header 的值

c# - 如何更新 ObservableCollection 类中的单个项目?

c# - 基于服务的数据库