问题标签 [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 投票
1 回答
491 浏览

c# - C# 的委托方法可以采用隐式类型的参数吗?

我很好奇是否可以使用隐式类型的参数创建委托方法。这就是我想要完成的事情。这种事情不会为我编译,但它应该让你了解我想要完成的事情。

这是我想使用委托调用的函数:

这是调用它们的类:

显然,在这个示例中,您实际上只是调用了提供的函数。我实际上想要做的是创建一个包装函数,它允许您提供一个函数作为具有任何可能参数列表的委托。

我能想出的唯一解决方案是让 MyClass 中的函数也采用参数列表。但是,这会让直接调用这些函数的任何人感到非常困惑。这就是我的意思:

现在它编译了,但我需要猜测或阅读注释,以找出传递给函数 1 和函数 2 的内容。此外,它曾经在编译时失败,现在在运行时失败。所有非常糟糕的事情...

我在想可能会因为做这样的事情而缺少一些语法

干杯,罗伯

0 投票
2 回答
286 浏览

scala - 为什么不能优化这种隐式转换的情况?

为什么 Scala 不能优化以下内容:

一个。

至:

湾。

?

为什么在这种情况下必须使用结构类型?我希望 Scala 编译器执行此优化,因为以样式b编写太难看(因为,1. 逻辑的局部性丢失,2. 您必须为这些额外的显式类不必要地发明名称),并且a的性能要差得多比b

0 投票
3 回答
2328 浏览

inheritance - Scala中的类型类模式不考虑继承?

在某些情况下,我正在使用类型类设计 API,但是我遇到了隐式解析的问题。如下所示,如果存在类型 A 的隐式对象,但将类型的对象B extends A传递给方法,则找不到隐式对象。有没有办法使这项工作或调用者必须将隐式对象放入每个子类的范围内?

这是一个例子:

这无法使用以下输出进行编译:

0 投票
2 回答
897 浏览

python - Python中的嵌套字典,隐式创建不存在的中间容器?

我想创建一个多态结构,可以以最少的打字工作量即时创建,并且可读性强。例如:

我不想创建一个中间容器,例如:

我的问题与此类似:

实现嵌套字典的最佳方法是什么?

但是我对那里的解决方案不满意,因为我认为存在一个错误:
即使您不想要,也会创建项目:假设您要比较 2 个多态结构:它将在第二个结构中创建存在于第一个,刚刚签入另一个。例如:

我也想得到最简单的符号

我确实尝试从对象类派生......但我无法避免留下与上面相同的错误,即仅通过尝试读取属性就诞生了:一个简单的 dir() 会尝试创建像“方法”这样的属性...就像在这个例子中,这显然是坏的:

谢谢,真的!

ps:到目前为止我发现的最佳解决方案是:

0 投票
4 回答
2784 浏览

c - C UNIX 中函数的隐式声明

在以下代码中,我收到一条警告,指出函数 getpgid 存在隐式声明。我知道这只是一个警告,但它是针对班级的,教授希望我们将警告视为错误。所以,请帮忙。

我也包含了适当的头文件,所以我不知道出了什么问题:

0 投票
1 回答
1071 浏览

c# - C# 隐式转换为列表返回运行时错误

我有一个类似于以下使用内部列表的类:

当我尝试传递MyList<object>给一个接受 的函数时List<object>,我得到一个 InvalidCastException。为什么?

0 投票
3 回答
6750 浏览

c++ - 为什么在 C++ 中存在从指针到 bool 的隐式类型转换?

考虑foo具有这样定义的两个构造函数的类:

用字符串字面量实例化类,猜猜调用了哪个构造函数?

输出:

演员 2

我不了解你,但我认为这不是编程历史上最直观的行为。不过,我敢打赌,这有一些聪明的理由,我想知道那可能是什么?

0 投票
2 回答
397 浏览

scala - 隐式参数的有效用法

以下来自A Tour of Scala的示例展示了如何使用隐式来根据类型提供适当的缺失成员(add 和 unit)。编译器将在范围内选择正确的隐式对象。例如,该库还将其与and或and一起使用。List.sortByOrderingList.sumNumeric

但是,B 类中的以下用法是隐式参数的有效/推荐用法(与 A 类中不使用隐式参数相反):

在沿堆栈传递参数时,我主要使用隐式在调用站点为自己节省一些输入。

0 投票
3 回答
2173 浏览

scala - 是否可以在 Scala 中将“this”作为隐式参数传递?

假设我想用一个记录异常并继续的 try-catch 块来包装可以抛出异常的代码。就像是:

理想情况下,我想用于记录调用对象上定义的 Logger(如果有的话)(如果没有,则会出现编译时错误)。我很想定义这样的东西:

objectWithLogger 会以某种方式“神奇地”扩展为客户端代码中的“this”。这(或类似的事情)可能吗?

0 投票
2 回答
1274 浏览

matlab - Matlab lsqcurvefit 适用于一些迭代,然后在出现错误时停止

我正在尝试为由隐式函数定义的模型找到优化参数,以使用 fsolve 和 lsqcurvefit 拟合数据集。我在单独的 m 文件中定义了 3 个函数:第一个是要定义的 4 个参数中的隐式函数的定义,第二个使用 fsolve 查找已定义隐式函数的根,第三个使用 lsqcurvefit 查找优化值为四个参数。我自然需要为参数定义足够好的初始值,但是尝试了各种合理的组合后,lsqcurvefit 总是运行大约 20-30 次迭代(matlab 在每次迭代后打印出用 fsolve 找到的解计算的向量值)然后打印

我看不出“函数值和 YDATA 大小不相称”。突然,因为迭代第一次运行了 20-30 次。每次迭代后打印的值几乎全是零(非常适合),但最后几个“爆炸”从 0 到 1(系数为 10 的几个幂)。对错误的任何帮助表示赞赏!