問題タブ [optional-parameters]

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 に答える
1422 参照

c# - C#でオプションの「アウト」パラメータをシミュレートするためのパターン?

私は API を C から C# に変換しています。関数の 1 つは、多数の関連オブジェクトを割り当てます。そのうちのいくつかはオプションです。C バージョンは、オブジェクトに整数ハンドルを返すために使用されるいくつかのポインター パラメーターを受け入れます。呼び出し元は、NULLこれらのオブジェクトの割り当てを回避するために、いくつかのポインターを渡すことができます。

C# バージョンの場合、明らかな変換ではout、ポインターの代わりにパラメーターが使用されます。

...しかし、これでは、どのオブジェクトが不要であるかを示す方法がありません。私が真似できるような、C# API のよく知られた例はありますか? そうでない場合、何か提案はありますか?

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

resharper - インテリセンスの混乱を再鋭化

今日、Resharper 5 のコピーで奇妙なことが起こりました。次のようなクラスがあります。

DoWork(us と入力し始めると、Intellisense から次のように表示されます。

代替テキスト

コンストラクター引数をプルアップしており、コロンで終わっていることに注意してください: userName:

何が起きてる?

編集:

以下で Reed が回答したように、これはNamed and Optional Argumentsと呼ばれる新しい C# 4 機能です。その目的は、パラメーター リスト内の位置ではなく、引数の名前を指定できるようにすることです。そのため、使用するために引数リスト内の引数の位置を覚えておく必要はありません (ただし、これは intellisense ではほとんど意味がありません)。ただし、オプションの引数を使いやすくします。

ありがとうリード。

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

c# - C# 4 でのオーバーロードの解決とオプションのパラメーター

関数の7つのオーバーロードを持つコードを使用していますTraceWrite:

(パブリックの静的な名前空間のノイズはすべて、上と全体で省略されています。)

したがって、その背景で: 1) 他の場所では、4 つの引数を使用し
て呼び出します: 、および次のエラーが発生します。TraceWritestring, LogLevelENUM, string, bool

この呼び出しが 2 番目のオーバーロードに解決されないのはなぜですか? ( TraceWrite(string, LogLevelENUM, string, bool, string = ""))

2) で呼び出す場合TraceWritestring, LogLevelENUM, string, stringどのオーバーロードが呼び出されますか? 一代目か三代目?なぜ?

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

html - アンカーとして値が設定されたHTMLオプションタグ

いくつかのスーパーレガシーコードを更新していますが、このHTML5と互換性を持たせる方法がわかりません。

私は個人的にそのようなものに出くわしたことがないので、どんな助けも素晴らしいでしょう。

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

fortran - Fortran90オプションの引数の存在

pgf90 7.2でのpresent()組み込み関数の動作を理解していません。これをテストするために20行のサンプルプログラムを作成しましたが、結果はまだ意味がありません。観察:

メインプログラムからtestopt(1,2、(any variable))を呼び出すと、「present check:TF」と出力されます。ただし、I:サブプログラムからtestopt(1,2、(any variable))を呼び出すと、「present check:TT」と出力されます。どちらの場合も「presentcheck:F F」が表示されると予想しました。これは、オプションではない3つの引数のみを使用してサブルーチンを呼び出しており、オプションの引数はどちらも呼び出していないためです。なぜこのように動作するのか理解できず、これが私が取り組んでいるプログラムに大きなバグを引き起こしています。洞察に感謝します。ありがとう。

0 投票する
4 に答える
1194 参照

c# - C# Windows Phone XNA アプリケーションのオプション パラメーター

Windows Phone XNA アプリケーションでオプションのパラメーター (およびその他の純粋に構文的な C# 4.0 機能) を使用することは可能ですか?

これについて相反する情報を読んだり聞いたりしました。アプリケーションの [高度なビルド設定] で、[言語バージョン] が C# 3.0 に設定されています ([言語バージョン] ドロップダウン リストでC# 4.0 を使用できません)。3.0 は、最初に Windows Phone の開発に使用される「公式」の C# バージョンですか?

C# 4.0 の機能がまったく利用可能になると期待するのはばかげているでしょうか?

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

parsing - コンマ区切りの関数呼び出しパラメーターのパーサー式

myfunc1()、、myfunc2(param1)およびmyfunc3(param1, param2)(パラメーターの量が不明な)などの式を解析できるパーサーを作成しています。今、私は自分の解析式を正しくしようとしています。レモンパーサージェネレーターを使用しています。これが私が思いついたものです:

今のところ、中括弧の内容は気にしないでください。定義では、空のparamsパラメータ(次々にいくつかの区切り文字)が許可されていますが、現時点では問題ありません。しかし、空でないパラメーターを強制するために定義を変更する必要がありますが、それでもすべてのパラメーターはSEPARATORトークンで区切られていますか?

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

function - Clojure で関数引数のデフォルト値を作成する方法

私はこれで来ます:

しかし、これを行うにはより良い方法である必要があります。

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

c# - オプションの引数コードは .NET 3.5 でコンパイルされます。なんで?

このコードは、フレームワーク 3.5 プロジェクトの VS 2010 で正常にコンパイルされます (私はそれをトリプル チェックしました)。

なんで?C# 4 仕様 (ドキュメント バージョン) のセクション 21.1 には、これが下位互換性を持つべきであると書かれているものは何もありません。コンパイルエラーが発生しないのはどうしてですか? これは、状況によってはサイレントに失敗しますか?

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

c# - C# デフォルトのオプション パラメータ チューザ

どのコンストラクターが選択されますか?