問題タブ [ambiguous-call]

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 投票する
3 に答える
4088 参照

c# - C# でのあいまいな呼び出しに関する質問

特に問題ではないのですが、少し気になった質問があります。

2 つのメソッドを持つクラスがあります。1 つは静的メソッドで、もう 1 つはインスタンス メソッドです。メソッドは同じ名前です。

プロジェクトをビルドしようとすると、次のエラーが表示されます。

'MyApp.BlockHeader.Peek(System.IO.BinaryReader)' と 'MyApp.BlockHeader.Peek(System.IO.BinaryReader)' のメソッドまたはプロパティ間の呼び出しがあいまいです。

メソッドのシグネチャが実質的に同じであることはわかっていますが、インスタンス メンバーから静的メソッドを直接呼び出す方法がわかりません。

これにはかなりの理由があると思いますが、その理由を知っている人はいますか?

0 投票する
6 に答える
8262 参照

java - メソッドのJavaあいまいな型?

編集: これはコードの問題ではなく、Groovy Eclipse プラグイン ( http://jira.codehaus.org/browse/GRECLIPSE-373 )のバグであることが判明しました。

Eclipseは、Java プログラムのあいまいな型に関する奇妙なエラー メッセージを表示しますが、その理由がよくわかりません。返されるデータの種類を示すジェネリック パラメーターを受け取るインターフェイスがあります。

その実装の1つは次のようになります。

InterfaceAのコンテナもあります

これを行うと、「getData is ambiguous」エラーが発生します。

私はこれに困惑しています。

0 投票する
2 に答える
1271 参照

c++ - C++テンプレートとあいまいさの問題

次のようなポインタクラスのサブセットがあります。

最後のコンストラクターの目標はPointer、サブクラスの、または基本的に暗黙的にに変換可能な任意の型を渡すことができるようにすることT *です。この実際のルールは、コンストラクターの定義によってのみ適用され、コンパイラーは宣言だけで実際にそれを理解することはできません。Pointer<Sub>それを削除し、のコンストラクターにを渡そうとすると、パスを通過するPointer<Base>可能性があるにもかかわらず、コンパイルエラーが発生しますoperator T *()

上記の問題を解決しながら、別の問題を作成します。Pointer<UnrelatedClass>一方のオーバーロードがaを取り、もう一方がをとるオーバーロードされた関数があり、それPointer<BaseClass>をで呼び出そうとするとPointer<SubClass>、もちろん、後者のオーバーロードが呼び出されることを意図して、2つのオーバーロードの間にあいまいさが生じます。

助言がありますか?(うまくいけば、私は十分に明確でした)

0 投票する
1 に答える
85503 参照

c# - あいまいな一致例外の回避

コンパイル時にオブジェクトの型がわからないため、リフレクションを介して型に対して静的メソッドParseを呼び出しています(ただし、文字列を取得するParseメソッドがあります)。

ただし、あいまいな一致例外が発生します。これは、おそらく、それぞれが単一のオブジェクト(string、int、doubleなど)を受け取るオーバーロードされたParseメソッドが多数あるためです。

正しいメソッド( Parse(string s))に到達し、例外がスローされないようにするために、メソッド呼び出しをより具体的にするにはどうすればよいですか。

私のコードは次のようになります。

0 投票する
1 に答える
3735 参照

.net - VS2010のあいまいな参照エラー

ライブラリにはActionというタイプがあります。VS2005、2008をサポートしており、現在はVS2010もサポートしようとしています。'Action'タイプと'System'を含む名前空間をファイルに含めて使用しようとすると、ActionタイプとSystem.Actionデリゲートの間のあいまいな参照呼び出しが表示されます。これはVS2010でのみ発生し、アクションデリゲートで何も変更されていなくてもVS2008またはVS2005でエラーをスローしません(名前空間、アセンブリはすべて3.5と4.0で同じです)。なぜこれが起こっているのか考えていますか?

アップデート:

これを再現するための簡単なアプリケーションを作成しました。

Class1.cs:

Class2.cs:

上記のコードはVS2008では正常にコンパイルされますが、VS2010ではエラーがスローされます:「エラーCS0104:「アクション」は「Namespace1.Action」と「System.Action」の間のあいまいな参照です」

4.0ではなくVS2010とターゲットFramework3.5を使用すると、同じエラーが発生します。

ありがとう、ニランジャン

0 投票する
6 に答える
2489 参照

c# - C# でのあいまいな関数/コンストラクター呼び出し

次のコードはあいまいな呼び出しですが、エラーが発生しないobject代わりに使用すると問題が発生し、バージョンが正常に動作するため、コンパイラ エラーが発生します。それについての説明はありますか?ArrayListstring

0 投票する
2 に答える
1420 参照

c# - あいまいな名前の拡張メソッドを解決するにはどうすればよいですか?

System.Linq.EnumerableのAsEnumerable拡張メソッドを使用して列挙しようとしているDataTableがあります。問題は、System.Data.DataTableExtensionsに同じ名前の拡張メソッドがあることです。クラスで両方の名前空間を使用する必要があるため、usingステートメントの1つを削除することはできません。

System.Data.DataTableExtensionsではなくSystem.Linq.EnumerableからAsEnumerableメソッドが必要であることを宣言するにはどうすればよいですか?

0 投票する
2 に答える
1436 参照

c# - ここで「あいまいな一致」エラーが発生するのはなぜですか?

私が現在取り組んでいるページは、ポートフォリオに基づいてさまざまなエンティティを検索します。他の検索基準 (ポートフォリオ以外) を適用するために、ページは最初にポートフォリオごとにエンティティを取得し、次に基準をそれらに適用します。ここに示すように:

この最後の行は、次のコードに送信します。

ここから、ポートフォリオに関連し、基準にも一致する特定のエンティティを取得します。

私のローカルマシンでは、これは完全に機能します。エンティティを見つけて、それらの基準を実行します。ただし、私たちのファームでは、次のメッセージが表示されます。

出力されるスタック トレースでは、上記の行に移動します。他のすべての場所は他のプロセスによって頻繁に使用されており、以前にこの問題が発生したことはありません。上記の行だけが異なります。

何か案は?

0 投票する
7 に答える
4989 参照

c# - 引数がnullの場合のあいまいさを解決するにはどうすればよいですか?

次のコードをコンパイルするとThe call is ambiguous between the following methods or propertiesエラーが返されます。nullこれらのクラスのいずれにも明示的に変換できないため、どのように解決しますか?

0 投票する
2 に答える
346 参照

c# - Min(byte、int)呼び出しがあいまいになる理由は何ですか?

コンパイラによると、なぜ以下が曖昧なのかわかりません。

そして、バイトに+1を追加すると、そうではありません