「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
フレームワーク開発に使用されつつあるので。
詳細 †
- 新規の派生型の作成、再コンパイル、または元の型の変更を行うことなく既存の型にメソッドを "追加" できる。
- 拡張メソッドは特別な種類の静的メソッドですが、拡張された型のインスタンス メソッドのように呼び出せる。
定義と利用 †
データ列に対するパイプラインやメソッドチェーンを、
後付けで実装するようなユースケースに最も適合する。
定義側 †
- staticクラスのstaticメソッドの第1引数の前に this を付ける。
- 同じ名前空間内に2つ以上同名の拡張メソッドを定義できない。
利用側 †
- インスタンス・メソッドと同じ書き方をする(第1引数にthis的にアクセス可能)。
- 同名の拡張メソッドが定義されている名前空間を同時に using できない。
注意 †
便利なだけに、フツーに考えた範囲で問題ありそう。
その他 †
構造体、インターフェイス、enumに対しても適用可能。
参考 †
Tags: :プログラミング, :.NET開発