问题标签 [ambiguous]

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 回答
311 浏览

excel - EXCEL 2007 SENDKEYS 检测到不明确的名称

我正在尝试使用以下代码通过 vba 隐藏 excel 2007 中的功能区:

但 Office 帮助窗口打开并显示类似“检测到模糊名称”之类的内容。艾米的想法有什么问题?

0 投票
1 回答
20098 浏览

sql - 具有 AS 别名的不明确列引用

我不确定在使用别名时如何解决不明确的列引用。

想象一下两个表,a它们b都有一name列。如果我加入这两个表并为结果设置别名,我不知道如何引用这name两个表的列。我已经尝试了一些变体,但它们都不起作用:

尝试 1

这不起作用a并且b超出范围。

尝试 2

SQL 语法不是这样工作的。

尝试 3

这简直是​​模棱两可!

我完全没有想法 - 任何帮助将不胜感激。

0 投票
1 回答
238 浏览

c++ - 可变参数模板的歧义

我有一个关于可变参数模板的问题。我有一个类以下列方式使用它们:

typename T::B是某种类型,预期对于参数包中的所有实例都相等。为了便于展示,我将这种类型称为B. 该类包含B参数包中每个参数的实例。第二个构造函数(2)初始化这些成员。为方便起见,有一个构造函数(1),它只接受一个实例并用相同的实例初始化所有成员。

构造函数的定义对我的问题并不重要,您可以将它们留空。下面提供了一个更完整的示例。

现在,问题是构造函数冲突,如果你只用一个参数初始化 A。g++-4.7这边有点糊涂,逃了出来,但是仔细看了一下班级,问题就很明显了。

问题:

  1. 标准对这种情况有什么看法?这是应该/可以由编译器解决的歧义还是我应该避免这种情况?

  2. 避免它的最佳策略是什么?根本没有指定第一个构造函数之类的东西吗?我也可以将第一个构造函数的功能放在静态方法中,但这会使 API 更加不均匀。

感谢您的回答!


完整示例:

0 投票
3 回答
1111 浏览

haskell - “show”的Haskell模棱两可的类型变量?

现在请看这个新写的代码,没有使用“读取”,但我仍然在模棱两可的“显示”上得到错误:

ghci 错误消息:

请注意,注释部分不会给出此错误。请解释为什么这是错误的。

原始消息保留在下面。

我在一个网站上得到了以下代码。我知道“读取”功能可能会出现模棱两可的类型错误,但在这里我也可以为“显示”功能找到它。我觉得很奇怪,不明白。

代码:

当我在 ghci 中加载它时出现错误。

0 投票
6 回答
618 浏览

java - Java 编译器如何区分这两个构造函数/方法?

在那种情况下,Java 编译器是如何决定使用constructor 2而不是 的constructor 1?为什么没有The constructor ... is ambiguous或类似的错误发生?

PS:这个问题也适用于经典方法

0 投票
1 回答
74 浏览

c# - 查找百分比并将其四舍五入两个位置

我知道这是我要问的基本问题,请耐心等待。

我试图找出百分比。

这是我正在尝试的,但它给了我一个模棱两可的错误。

 

0 投票
0 回答
147 浏览

java - 模棱两可的方法

我有这段代码:

编译器说在第二行我有这个错误:

0 投票
1 回答
1490 浏览

xcode - 提到“移动”是模棱两可的

在代码的这个特定部分中,Xcode 发现以下错误:对“移动”的引用不明确。此外,它说:枚举值“移动”未在开关中处理;这是胡说八道,因为包含该值的类。

类如下:

有人可以找出问题所在吗?谢谢你。

0 投票
1 回答
5385 浏览

c++ - 重载运算符 '>>' 的使用不明确(操作数类型为 'istream'(又名 'basic_istream') 和 'MyIncreEx')

这是代码,我似乎没有发现它有什么问题;我需要重载 << 和 >> 运算符,但出现以下错误:

重载运算符“>>”的使用不明确(操作数类型为“istream”(又名“basic_istream”)和“MyIncreEx”)

我看不出它的真正含糊之处:

0 投票
2 回答
1039 浏览

java - 在 Java 中明确消除重载构造函数的歧义

我知道,如果我在 Java 中有一个可以接受几种不同类型参数的重载方法,并且我想传递null给该方法,我需要将其显式转换为一种接受的类型。我的问题是,是否可以null从方法本身中选择调用哪个版本的方法(例如,通过添加另一个重载来处理null)?

我的问题如下 - 我有一个带有一个接受一个参数的重载构造函数的类:

用例是这样的,如果类是用 a 构造的null,那么只有构造函数的第二个版本才有意义。但是new MyClass((B)null)每次都必须这样做很容易出错。如果我不小心使用了转换 to A,则会执行错误的构造函数。而且我也不能在我的A构造函数中引入以下检查:

因为this(...)不是第一个声明。当然,我可以在此检查中复制构造函数中的代码B,或者引入另一种方法来执行B构造函数所做的事情,然后从构造函数内部和此检查中调用它,但这看起来不像“干净”解决方案(并且可能并不总是可能的,例如在级联构造函数的情况下)。

有没有办法让我只需要每次都执行构造函数new MyClass(null)的版本?B

我试图添加这个重载,但编译器抱怨: