C#4.0の新しい“名前付きパラメーター”機能は“名前付き引数&#8221 ;?

StackOverflow https://stackoverflow.com/questions/306085

質問

この命名には歴史的な理由があり、他の言語にも同様の機能があると思われますが、C#では常にパラメーターに名前が付けられているように思えます。引数は名前のないものです。または、この用語が選択された特別な理由がありますか?

役に立ちましたか?

解決

はい、あなたは絶対に正しいです(とにかく私の心には)。皮肉なことに、私は通常これらの用語にこだわりがありますが、それでも「パラメーターの受け渡し」を使用しています。 「引数の引き渡し」について話す必要がある場合。 C#4.0より前では、メソッドを呼び出す場合、パラメーター名は気にしないが、引数でも同様に指定できる場合、名前は重要なメタデータの一部になると主張できると思います。

違いを生むことに同意し、用語が重要です。

"オプションのパラメーター"しかし、それは間違いなく大丈夫です-それはあなたが前にそうすることができなかったときにパラメータにメタデータを追加しています:)(それを言って、それは生成されたILの面ではオプションではありません...)

チームにフィードバックをお願いしますか?

他のヒント

ああ、引数が欲しかった!申し訳ありませんが、これはパラメーターです。引数は、左側のホールの2つのドアです。

そうは思いません。名前はメソッドのパラメーターと適切に呼ばれているメソッド定義で定義され、特定の意味が与えられているため、名前は間違いなくパラメーターの名前です。呼び出しサイトで、引数に値を提供するパラメーターの名前をタグ付けできるようになりました。

新しい用語は、メソッド呼び出し元の観点を指します。これは、機能が適用される場所であるため論理的です。以前は、呼び出し側はパラメーターを「配置されたパラメーター」であると考えるだけでした。オプションの「名前付きパラメーター」としてオプションで処理できるようになりました。 -したがって、名前。

今追加する価値があるかどうかはわかりませんが、MSはとにかく名前付き引数と呼びます。 名前付き引数とオプションの引数

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top