「C Sharp/デリゲート」の版間の差分
imported>Administrator |
imported>Administrator 編集の要約なし |
||
| (同じ利用者による、間の5版が非表示) | |||
| 1行目: | 1行目: | ||
'''デリゲート'''(delegate)とは、[[C Sharp|C#]]に搭載されている機能のひとつで、[[Delphi]]の[[関数ポインタ]] | '''デリゲート'''(delegate)とは、[[C Sharp|C#]]に搭載されている機能のひとつで、[[Delphi]]の[[関数ポインタ]]を若干改良(拡張)し、[[リネーム]]した[[データ型]]のひとつである。 | ||
== 注意 == | |||
[[C Sharp|C#]]の属する[[TurboPascal]]一族の[[関数ポインタ]]と、[[C言語]]一族の[[関数ポインタ]]は別物であり、C言語系[[プログラミング言語]]で育った人はとくに注意すること。 | |||
[[Delphi]]由来の[[関数ポインタ]]は[[引数]]や[[戻り値]]の[[型チェック]]が超厳密であり、またデリゲート生成時に指定した[[クラス]]の[[インスタンス]]の範囲内にのみ作用する。とくに作用範囲などという概念のない[[C言語]]系から来た[[プログラマー]]が陥りやすい点なので注意すること。 | |||
== Delphiの関数ポインタからの改良点 == | == Delphiの関数ポインタからの改良点 == | ||
| 51行目: | 54行目: | ||
== 関連項目 == | == 関連項目 == | ||
* [[イベント]] | * [[イベント]] | ||
** [[C Sharp/イベント|C#/イベント]] | |||
* [[C Sharp|C#]] | |||
== 参考文献 == | == 参考文献 == | ||
<references/> | <references/> | ||