「
関数
」を編集中
2021年12月11日 (土) 13:36時点における
Master
(
トーク
|
投稿記録
)
による版
(
→
属性
)
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 決して、ここには、値の入力は
しない
でください!
関数は、一連のステートメントが含まれているコードの集まりです。必要な引数を指定してプログラムから関数を呼び出すと、関数内のステートメントが実行されます。 [[Category:基本]][[Category:Alice(名前空間)]] {| class="wikitable" |+function |- |名前空間 |Alice |- |アセンブリ |ローカル |- |サポート |AliceScript1 |- |属性 |言語構造 |} ===基本=== 関数は、クラスや名前空間内外で修飾子(<code>override</code>や<code>virtual</code>など)、関数の名前および引数を指定して宣言されます。 引数はかっこで囲み、各引数をコンマで区切ります。括弧内を空にすると、関数で引数が不要なことを意味します。 定義された関数は、関数の定義された後で使用できるようになります。 次の例には<code>SayHello</code>関数が定義されています。<code>SayHello</code>が呼び出されたとき、標準出力にHello,World!を書き込みます。 function SayHello() { print("Hello,World!"); } SayHello(); ===戻り値=== 関数は、呼び出し元に<code>return</code>キーワードを使用して値を返すことができます。関数の戻り値は呼び出し元でそのまま値として使用できます。次に例を示します。 function ReturnHello() { return "Hello,World!"; } print(ReturnHello()); //出力:Hello,World! また、<code>return</code>キーワードは、関数の実行を中止します。任意の場面で関数の実行を中止したい場合、 値を持たない<code>return</code>キーワードを使用することができます。次に例を示します。 function ShowHello() { print("Hello"); return; print("Hello,(again)");//この行は、returnキーワードよりも後にあるため実行されません } //出力:Hello ===引数=== 関数を定義する際には、必要な引数の名前を指定します。呼び出し元のコードから関数を呼び出すときに引数に具体的な値を指定します。次に例を示します。 function AddNumber(numA,numB) { rerturn numA + numB; } AddNumber(1,2);//戻り値:3 また、引数に<code>number</code>や<code>string</code>などの型指定修飾子を使用すると、その型の値のみを引数として受け入れるようになり、予期しない型を使用した呼び出しを防ぐことができます。次に例を示します。 function Add(number a,number b) { return a+b; } Add(1,2);//戻り値:3 Add("1","2");//例外発生 さらに、引数に<code>params</code>キーワードを使用すると、可変長個の引数を受け取る引数を指定できます。<code>params</code>の型は常にARRAYとなります。 一つの関数内では、<code>params</code>キーワードより後に引数を指定することができません。次に例を示します。 function PrintAllArgs(params args) { foreach(arg in args) { print(arg); } } PrintAllArgs("Hello","World"); //出力:Hello World PrintAllArgs(); //出力:(何も出力されません) ===属性=== AliceScriptではさまざまな機能や構造が関数で設計されているため、必要に応じて関数に特別な機能を持たせることが可能です。属性の一覧を以下に示します。 {| class="wikitable" |+関数の属性 |- |属性の名前 |修飾子 |概要 |- |一般 |指定不要 |通常の関数です。引数などは自動的にチェックされ実行されます。 |- |関数の区切り文字の空白をサポート |指定不可 |関数の呼び出し時に丸括弧の代わりに空白文字が使用できます。 |- |単一の引数のみ関数の区切り文字の空白をサポート |指定不可 |関数の引数が一つのみの場合に関数の呼び出し時に丸括弧の代わりに空白文字が使用できます。 |- |言語構造 |指定不可 |言語構造です。さまざまな形で使用できるため引数の自動チェックや最適化が実行されません。 |- |オーバーライド可能 |virtual |オーバーライド可能な関数です。 |- |オーバーライド |override |既存の関数をオーバーライドします。この関数をオーバーライドすることもできます。 |- |グローバル関数 |global |すべてのスコープで使用可能な関数です。 |}
編集内容の要約:
AliceScript Wikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
AliceScript Wiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
キャンセル
編集ヘルプ
(新しいウィンドウで開きます)
このページで使用されているテンプレート:
テンプレート:Alert
(
編集
)
テンプレート:Func-getcolor
(
編集
)
テンプレート:Func-getsafe
(
編集
)
ナビゲーション メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
案内
メインページ
ツアー
ダウンロード
規約
おまかせ表示
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報