问题标签 [implicit]

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 投票
7 回答
18655 浏览

.net - ReSharper 和 var

可能重复:
为什么 ReSharper 想要对所有内容都使用“var”?

我有 ReSharper 4.5,到目前为止发现它非常宝贵,但我有一个担忧;
似乎想让每个变量声明都是隐式的(var)。
作为一个相对较的开发人员,在这方面我应该信任 ReSharper 多少?

从绘制选项卡标题的方法中获取以下代码片段。

Resharper 希望我将所有 5 个更改为var。我已阅读以下类似的帖子Use of var keyword in C#,但我想从 ReSharper 的角度了解。

0 投票
1 回答
305 浏览

c# - 隐式运算符?

我需要帮助。我正在创建一个这样的 SelectItem 类:

我希望以下代码有效

而不必这样做:

我怎样才能做到这一点?

0 投票
1 回答
2221 浏览

c# - 隐式转换为 Func

假设我有一个IMyInterface<T>简单描述一个功能的接口:

我可以将其替换为Func<T, T>,但出于语义原因,我想要该界面。我是否可以在该接口之间定义一个隐式转换,Func<T,T>以便我可以将匿名委托或 lambda 作为参数传递给接受此接口作为参数的函数,就像我使用的Func<T,T>那样?

为了演示,使用上面声明的接口,我想要一个这样的函数:

我可以这样称呼:

结果将是“hello world”。

0 投票
2 回答
22164 浏览

ruby - Ruby 中的隐式返回值

我对 Ruby 有点陌生,虽然我发现它是一种非常直观的语言,但我很难理解隐式返回值的行为方式。

我正在开发一个小程序来 grep Tomcat 日志并从相关数据生成管道分隔的 CSV 文件。这是我用来从日志条目生成行的简化示例。

当我运行此代码时,我会返回以下内容,这是显式返回输出值时所期望的。

但是,如果我将 LineMatcher 更改为以下内容并且不明确返回输出:

然后我得到以下结果:

显然,这不是我们想要的结果。感觉我应该能够摆脱输出变量,但不清楚返回值来自哪里。此外,欢迎任何其他关于可读性的建议/改进。

0 投票
3 回答
418 浏览

c++ - 如果在 C++ 中没有先前声明的情况下定义自由函数,是否会隐式内联?

以下自由函数是否在 C++ 中隐式内联,类似于在类定义中定义的成员函数如何被隐式内联?

模板函数的行为方式是否相同?

0 投票
8 回答
50041 浏览

c# - 显式和隐式 c#

我是 C# 新手,正在学习新单词。在编写 c# 时,我发现很难理解这两个词的含义。我在字典中查找了含义,这就是我得到的:

隐式

“隐含的东西以间接的方式表达。”

“如果某种品质或元素隐含在某事物中,它就包含在其中或被它表现出来;”

显式

“明确而公开地表达或显示的东西,没有任何隐藏任何东西的企图”

“如果你对某事直言不讳,你就会非常公开和清楚地谈论它。”

我想用 C# 来理解它。

谢谢你的帮助。

干杯


附加信息:

这是我现在正在阅读的书中的一部分句子,其中包含“隐式”一词

“这意味着里面的 Area 和 OccupantsAreaPerPerson( ) 隐式引用了在调用的对象中找到的那些变量的副本AreaPerPerson( )

我完全不明白这句话在这里想说什么。

0 投票
1 回答
4725 浏览

dll - 为什么我们已经有了实际的 .dll 实现,还需要一个 .lib 存根文件?

我想知道为什么链接器不能仅仅通过查阅获得实际实现代码的实际 .dll 文件中的信息来完成他们的工作?我的意思是为什么链接器仍然需要 .lib 文件来进行隐式链接?

对于这种链接,导出和相对地址表还不够吗?

无论如何,有没有人可以只使用 .dll 而不使用 .lib 存根/代理文件来进行隐式链接?

我认为 Windows 可执行加载器只会代表程序执行 LoadLibrary/LoadLibraryEx 调用(因此称为隐式链接),这是与显式链接的主要区别。如果这是真的,那么在没有 .lib 的情况下显式执行它应该表明它在没有它的情况下是可行的,对吧?还是我只是在说无意义?

0 投票
6 回答
4485 浏览

string - 避免 Scala 中的隐含定义歧义

我正在尝试创建从任何类型(例如,Int)到字符串的隐式转换...

隐式转换为 String 意味着 RichString 方法(如 reverse)不可用。

到 RichString 的隐式转换意味着字符串方法(如 toCharArray)不可用

使用两种隐式转换意味着重复的方法(如长度)是模棱两可的。

那么,是否可以隐式转换为 String 并且仍然支持所有 String 和 RichString 方法?

0 投票
1 回答
207 浏览

scala - 将字符串转换为“A”的对象

我想写一个像这样的类:

这样做,我有几个问题:

  1. 对字符串使用隐式会导致无穷无尽的麻烦
  2. 无论如何,如果它们是在我的模块中定义的,系统不会找到隐含的,它们需要在创建类的模块中定义
  3. 对象的第二种apply方法Store无法编译,因为A将被擦除,因此编译器无法找到从String到的转换A

您将如何创建这样一个将字符串转换为其他类型的对象?我不希望库的用户重新输入类型(即通过指定类型和转换函数)。

0 投票
2 回答
2323 浏览

scala - Scala 隐式使用选择

我一直想知道透明 implicit转换是否真的是一个好主意,以及更多地,嗯,显式地使用隐式是否真的更好。例如,假设我有一个接受 aDate作为参数的方法,并且我有一个将 a 转换String为 a的隐式转换Date

然后显然我可以通过透明implicit转换来调用它:

让我将字符串转换为日期这一事实更明确会更好吗?

那么用法看起来更像:

implicit这样做的好处是,以后会更清楚地知道发生了什么——我现在已经被我应该知道的透明转换(Option对任何人?)抓到了几次,Iterable而且这种用法仍然允许我们利用implicits。