編集の要約なし
編集の要約なし
88行目: 88行目:
  PrintAllArgs();
  PrintAllArgs();
  //出力:(何も出力されません)
  //出力:(何も出力されません)
=拡張メソッド=
拡張メソッドを使用すると、新規に型を作成することなく既存の型にメソッドを追加できます。拡張メソッドに使用する関数はグローバル関数である必要があり、現在の型の変数が代入される引数に<code>this</code>キーワードを使用します。
==WordCountの例==
function global WordCount(this string str)
  {
    return str.Split(“ ”).Length;
  }
var text = “Hello Extension Methods”;
print(text.WordCount());//出力例:3
登録したい引数の型指定修飾子を<code>this</code>キーワードの後に記述します。これを省略すると、<code>variable</code>型に登録されます。複数の<code>this</code>キーワードを使用することはできません。拡張メソッドには<code>virtual</code>属性および<code>override</code>属性を付与することもできます。標準の型メソッドのオーバーライド可否については[[変数]]を参照してください。
=属性=
=属性=
AliceScriptではさまざまな機能や構造が関数で設計されているため、必要に応じて関数に特別な機能を持たせることが可能です。属性の一覧を以下に示します。
AliceScriptではさまざまな機能や構造が関数で設計されているため、必要に応じて関数に特別な機能を持たせることが可能です。属性の一覧を以下に示します。