2017-07-13 13 views
-4

私はこのコードを私のプロジェクトで使用しています。この機能はc#で呼び出され、どのバージョンのC#でこれが使用されますか

internal static StringBuilder a(this StringBuilder sb, string b) => sb.Append(b).Append("\n"); 

これは私がこれについてもっと学ぶことができるように、誰が教えてくれますか?

+2

私は、彼らが表現ボディメソッドの構文を意味すると仮定するつもりです。 –

+4

これは[エクスプレッションボディメンバーとプロパティ]と呼ばれています(https://stackoverflow.com/questions/40321431/what-is-the-benefit-of-using-expression-bodied-functions-and-properties) –

+0

ええと。私はすべてについて読むことができます。特別な機能=> – iGod

答えて

1

internal static StringBuilder a(this StringBuilder sb, string b)

をチェックaStringBuilder拡張メソッドであることを教えてくれる。あなたはhere

=> sb.Append(b).Append("\n")

これらが無いの文本体と機能している拡張メソッドの詳細を読むことができます。代わりに、関数宣言の後に式を実装します。これはC#6の新機能であり、式身体機能メンバと呼ばれています。あなたはそれらについてもっと読むことができますhere

0

この行には2つの主要な機能があります。 1つは、ラムダ記号(=>)の左側に定義されたメソッドシグニチャで、拡張メソッドとして識別され、最初のパラメータの前にthisキーワードを使用するため、拡張メソッドです。第2は、ラムダ記号の右側にある式身体機能と呼ばれます。

Extension methods

Expression bodied functions