の)匿名メソッド構文でできることはラムダ式でもできます。開発者も、「もし、ラムダ式が先に導入されていれば、匿名メソッドの構文は不要だった」と言っています。匿名メソッドは、例えば、以下のような書き方をしていました。0;}この匿名メソッドをラムダ式を使って書き直すと、以下のようになります。0;要するに、記法としては、以下のようになります。似たような型推定機能が働く。省略して以下のように書くことができます。型はコンパイラが推論してくれます。いう名前のデリゲートが標準で用意されています。型を返すようなデリゲートを以下のように表現できます。中身は匿名デリゲートと同じ書き方をする。2つ目に関してですが、こちらは完全に新機能で、ラムダ式特有のものです。tree)データとして扱うこともできます。コンパイル後には実行コードの状態になっています。以下のように式中の項を取り出したりといった操作が可能です。ラムダ式をあるときには実行コードとして、またあるときにはデータとして利用するということができました。関数型言語と似たような動作を実現しています。式木には少し制約があります。使わない)ラムダ式だけです。以下の例では、1つ目のラムダ式はコンパイル可能ですが、2つ目はエラーになります。};要するに、単文で書けるものしか式木にできません。制御構文は式木にできません。相当するノードはない。クエリに変換してデータベースに問い合わせをかけるというようなことをしているようです。発行するしくみになっています。部分をデリゲート(要するに実行コード)として受け取っていてはできません。オブジェクトの初期化を以下のような記法でできるようになりました。initializer)と呼びます。};ちなみに、このコードの実行結果は以下のようなコードと等価です。メンバー変数またはプロパティのみです。初期化子を書いた場所からアクセスできる変数・プロパティのみ。プロパティへの値の代入を単文で書けるようになります。これで何が嬉しいかというと、クラスのメンバー変数の初期化や、式木への代入が可能になります。↑式木には単文のラムダ式しか代入できない。要するに、以下のような書き方はコンパイルエラーになる。↑メンバー変数の初期化に複文は書けないの。}末尾コンマオブジェクト初期化子では、配列の初期化子と同様に、末尾のコンマはあってもなくてもかまいません。以下の2行は同じ意味になります。};これは、後述するコレクション初期化子やインデックス初期化子でも同様です。コレクション初期化また、コレクションの初期化を以下のような記法でできるようになりました。initializer)と呼びます。メソッドを持つクラス)に対して行うことができます。ちなみに、このコードは以下のようなコードと等価です。以下のような記法で初期化ができます。メソッドが呼ばれます。コレクション初期化子に代わって、以下のようにコレクションを作ることができるようになりました。これをコレクション式といいます。9];コレクション初期化子との差や、コレクション式のメリットなどは「コレクション式」で説明します。オブジェクト初期化子に、インデクサーを混ぜれるようになりました。initializer)といいます。Dictionary(System.Collections.Generic名前空間)に対して以下のような書き方ができます。2,};プロパティへの代入とインデクサーへの代入を混在させることもできます。}}再帰初期化ちなみに、再帰的な構造を持ったクラスの初期化もできます。}}ただし、再帰的な初期化をするためには、メンバーが参照型(class)である必要があります。コンパイルエラーになります。してくれたりはしないので注意が必要です。コンストラクターもしくはメンバー初期化子での初期化が必要です。NullReferenceException。まで気兼ねなくご連絡ください。ついて運営者について。