「デリゲート」の版間の差分
編集の要約なし タグ: モバイル編集 モバイルウェブ編集 |
|||
43行目: | 43行目: | ||
SayHello();//出力例:Hello,World! | SayHello();//出力例:Hello,World! | ||
==ユーザー定義関数からの暗黙的な変換== | ==ユーザー定義関数からの暗黙的な変換== | ||
ほとんどのネイティブ関数とユーザー定義関数は、デリゲート型の変数へと暗黙的に変換できます。ユーザー定義関数を丸括弧なしで呼び出すと、それはその関数をデリゲート型に変換されたオペランドと認識されます。次に例を示します。 | |||
function SayHello() | function SayHello() | ||
{ | { | ||
print(“Hello,World”); | print(“Hello,World”); | ||
} | } | ||
var hello=SayHello;// | var hello=SayHello;//helloは、DELEGATE型を表します | ||
hello();//出力:Hello,World | hello();//出力:Hello,World | ||
ただし、以下の属性を持っている関数を暗黙的に変換することはできません。 | |||
*言語構造 | |||
*関数の区切り文字の空白をサポート | |||
*単一の引数のみ関数の区切り文字の空白をサポート | |||
また、FunctionBase型を継承しない関数も、この機能をサポートしません。 | |||
==デリゲートの組み合わせ== | ==デリゲートの組み合わせ== |