问题标签 [implicit-typing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
484 浏览

c# - 三元组的隐式类型数组

我有一个单元测试方法:

因为它“知道”哪些类型是(设计的)兼容的,所以它会调用正在测试的单元并查找错误。错误应该只出现在不兼容的类型上,所以方法测试是单元类型检查代码是否正确实现。

问题:我是如何编写三胞胎合集的?

我想要类似的东西:

带有隐式类型。

PS 我知道我可以将属性与 NUnit 一起使用。不过,我想看看,如何在没有库的情况下编写它。

问候,

0 投票
5 回答
17699 浏览

c# - 为什么 C# 不允许您使用 var 声明多个变量?

鉴于以下情况:

所以令我惊讶的是:

不编译。也许我对此有些不理解(这就是我问这个的原因)?

但是为什么编译器没有意识到我的意思是:

哪个会编译。

0 投票
7 回答
44445 浏览

c# - 为什么不能将匿名方法分配给 var?

我有以下代码:

但是,以下内容无法编译:

为什么编译器无法确定它是一个Func<string, bool>?它接受一个字符串参数,并返回一个布尔值。相反,它给了我错误:

无法将匿名方法分配给隐式类型的局部变量。

我有一个猜测,那就是如果 var 版本已编译,如果我有以下内容,它将缺乏一致性:

以上没有意义,因为 Func<> 最多只允许 4 个参数(在 .NET 3.5 中,这是我正在使用的)。也许有人可以澄清这个问题。谢谢。

0 投票
1 回答
118 浏览

f# - 添加需要初始化代码以隐式 F# 类型的重载构造函数

我目前有以下代码:

我的问题在于最后一个带bool[,]参数的构造函数。编译器不会让我摆脱我试图在此构造函数中用于初始化的两个 for 循环。我怎样才能使这项工作?

0 投票
5 回答
8739 浏览

c# - 将隐式类型的局部变量初始化为 IList

我明白了implicitly-typed local variables must be initialized

我知道那result将是一个IList,所以我能以某种方式说 varresult将是一个IList吗?

0 投票
5 回答
103 浏览

c# - 隐式类型类成员

可能重复:
在方法之外使用 var

我已经对此进行了一些搜索,但对搜索词不太确定,所以没有找到任何东西。

为什么我不能这样做:

猜想一定有一个很好的理由,但我想不出来!

我对推理更感兴趣,而不是因为“C# 不允许你”的答案。

编辑:编辑Dictionary声明,对不起(只是示例中的错字)!

0 投票
3 回答
230 浏览

c# - 使用隐式类型

可能重复:
Resharper:vars

resharper 是否有理由提出var thing1 = 5反对int thing1 = 5?似乎它们的意思完全相同,只是 var 对人类读者来说更难/更难理解。我很想知道编译器解释它们的方式是否存在差异,或者它是否只是语法糖。

0 投票
1 回答
431 浏览

c# - 隐式类型与显式类型的比较 - C#

我有一个关于类型比较的有趣问题。我正在尝试将隐含类型与显式类型进行比较,以测试某物是否是任何类型的集合

在我的测试过程中,我可以确保它obField会变成一个对象的集合。但是,我发现它总是会在 check and中运行return true,而我希望它跳过它(因为这两种类型是相等的。)

一点调试给了我obFieldas的类型object {System.Collections.Generic.List<System.DateTime>}

我怎样才能匹配那种类型?

谢谢

0 投票
6 回答
2517 浏览

.net - ReSharper 和隐式类型变量

我正在使用 ReSharper 来帮助我发现代码中可能存在的错误,虽然不是错误,但它一直在抱怨我应该使用var关键字而不是在声明中显式键入变量。就个人而言,我认为这对我和任何阅读我的代码的人来说都更清楚,如果我写的话

代替

知道两种方式之间没有性能差异,我应该忽略这些提示还是坚持使用var关键字?

隐式类型变量是否只是品味问题还是一种好习惯?

0 投票
4 回答
199 浏览

c# - 为什么在 C# 中声明为隐式类型的数字默认为整数?

示例 1

结果 255:字节

示例 2

结果 255:Int32

示例 3

结果 10:Int32

示例 4

结果:错误:无法将 long 类型隐式转换为 int

我的问题是为什么 C# 在使用var.