問題タブ [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>1 つの関数を単純に記述するインターフェースがあるとします。

これを に置き換えることもできFunc<T, T>ますが、セマンティック上の理由からインターフェイスが必要です。そのインターフェイスとの間の暗黙的な変換を定義して、代わりにFunc<T,T>使用した場合と同じように、このインターフェイスをパラメーターとして受け入れる関数に引数として匿名デリゲートまたはラムダを渡すことができるようにすることはできますか?Func<T,T>

上記で宣言されたインターフェースを使用して実証するには、次のような関数が必要です。

私はこのように呼び出すことができます:

結果は「hello world」になります。

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

ruby - Ruby での暗黙の戻り値

私はRubyに少し慣れていません。非常に直感的な言語だと思いますが、暗黙の戻り値がどのように動作するかを理解するのに苦労しています。

Tomcat ログを grep し、関連データからパイプ区切りの CSV ファイルを生成する小さなプログラムに取り組んでいます。これは、ログ エントリから行を生成するために使用している簡単な例です。

このコードを実行すると、次の結果が返されます。これは、出力の値を明示的に返すときに期待されるものです。

ただし、 LineMatcher を次のように変更し、明示的に出力を返さない場合:

次に、次の結果が得られます。

明らかに、これは望ましい結果ではありません。出力変数を取り除けばいいような気がしますが、戻り値がどこから来ているのか不明です。また、読みやすさに関するその他の提案/改善は大歓迎です。

0 投票する
3 に答える
418 参照

c++ - C ++で前の宣言なしで定義されている場合、フリー関数は暗黙的にインライン化されますか?

クラス定義で定義されている場合にメンバー関数が暗黙的にインライン化されるのと同様に、次のフリー関数は C++ で暗黙的にインライン化されますか?

テンプレート関数は同じように動作しますか?

0 投票する
8 に答える
50041 参照

c# - 明示的および暗黙的なC#

私はC#に不慣れで、新しい単語を学んでいます。c#のプログラミングに関して、これら2つの単語の意味を理解するのは難しいと思います。私は辞書で意味を調べました、そしてこれが私が得たものです:

暗黙

「暗黙の何かは間接的な方法で表現されます。」

「品質または要素が何かに暗黙のうちに含まれている場合、それはそれに関与しているか、それによって示されます。」

明示的

「明示的なものは、何も隠そうとせずに、明確かつオープンに表現または表示されます」

「あなたが何かについて明白であるならば、あなたはそれについて非常に率直にそしてはっきりと話します。」

C#で理解したいと思います。

ご協力いただきありがとうございます。

乾杯


追加情報:

これが私が今読んでいる本の文章の一部で、この単語は「暗黙的」です。

「これは、内部のAreaとOccupantsが、を呼び出すオブジェクトで見つかった変数のコピーをAreaPerPerson( ) 暗黙的AreaPerPerson( )に参照することを意味します。」

私はここでこの文が何を言おうとしているのか全く理解していません。

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

dll - 実際の .dll 実装があるのに、なぜ .lib スタブ ファイルが必要なのですか?

実際の実装コードを取得した実際の .dll ファイル内の情報を参照するだけでは、なぜリンカは自分の仕事を実行できないのでしょうか? つまり、暗黙のリンクを行うためにリンカがまだ .lib ファイルを必要とするのはなぜですか?

このようなリンクには、エクスポート テーブルと相対アドレス テーブルだけで十分ではありませんか?

とにかく.libスタブ/プロキシファイルなしで.dllのみを使用して暗黙的なリンクを行うことができるものはありますか?

Windows実行可能ローダーは、プログラムに代わってLoadLibrary/LoadLibraryEx呼び出しを実行するだけだと思いました(したがって、暗黙的なリンクという名前です)。これは、明示的なリンクとの主な違いです。それが本当なら、.libなしで明示的にそれを行うことは、それがなくても暗黙的に実行可能であることを示しているはずですよね? または私はナンセンスを言っているだけですか?

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

string - Scala で暗黙的な定義のあいまいさを回避する

任意の型 (Int など) から文字列への暗黙的な変換を作成しようとしています...

String への暗黙的な変換は、RichString メソッド (リバースなど) が使用できないことを意味します。

RichString への暗黙的な変換は、String メソッド (toCharArray など) が使用できないことを意味します。

両方の暗黙的な変換を使用すると、重複したメソッド (長さなど) があいまいになります。

では、暗黙的に String に変換し、引き続きすべての String および RichString メソッドをサポートすることは可能ですか?

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

scala - 文字列を「A」に変換するオブジェクト

次のようなクラスを書きたいと思います。

そうすることで、いくつかの問題があります。

  1. 文字列で暗黙的に使用すると、トラブルは尽きません
  2. とにかく、それらが私のモジュールで定義されている場合、システムは暗黙的なものを見つけません。クラスを作成するモジュールで定義する必要があります
  3. オブジェクトの 2 番目のapplyメソッドは、消去されるようにコンパイルされないため、コンパイラは からへの変換を見つける方法がありません。StoreAStringA

文字列を他の型に変換するようなオブジェクトをどのように作成しますか? ライブラリのユーザーがタイプを 2 回 (つまり、タイプと変換関数の両方を指定して) 入力することは望ましくありません。

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

scala - Scalaの暗黙的な使用法の選択

私は、透過的な implicit変換が本当に良いアイデアであるかどうか、そして暗黙的により多くの、ええと、明示的に使用する方が実際に良いのではないかと考えてきました。たとえば、パラメータとしてaを受け入れるメソッドがあり、 aを:にDate変換する暗黙の変換があるとStringします。Date

次に、明らかにこれを透過的なimplicit変換で呼び出すことができます。

文字列を日付に変換しているという事実をより明確にする方がよいでしょうか?

したがって、使用法は次のようになります。

これの利点は、後で何が起こっているのかがより明確になることです-私は(誰かに?)implicit知っておくべき透過的な変換によって数回捕らえられましたが、この使用法はまだ私たちがの力を利用することを可能にしますs。OptionIterableimplicit