##書きかけ…工事中…
##関数とは
####関数の基本的な書き方
返り値の型名 関数名 ( 引数の型 仮引数名、引数の型 仮引数名 );
// (※説明を簡単にする為、小数型ではなく整数型にしています)
//
// 関数の定義
// 整数型 三角形の面積を計算する(整数型 底辺、 整数型 高さ)
// {
// 整数型 答え = 底辺 × 高さ ÷ 2;
// リターン 答え;
// }
// 関数の定義
int CalcTriangleArea(int bottom, int hight)
{
int answer = bottom * hight / 2;
return answer;
}
// 実際の使用例
void Start()
{
int a = CalcTriangleArea(3, 4)
print("三角形の面積は " + a + " です。")
}
// 出力結果
// 「三角形の面積は 6 です。」
####運動会
運動会のプログラムを見たことがあると思うが…
- 開会式( )
- パン食い競走 ( )
- 騎馬戦 ( )
- …
- 閉会式 ( )
だいたいこんな感じに書いてある。
上から順に実行する。
大雑把に何をするか書いてあるだけで詳細は書いていない。
####いきなり詳細!
これをもし、
- 先ず校長が壇上に上がる、挨拶をする、教頭から注意事項、PTA会長の挨拶があって…
…っといきなり詳細を書きだして、それがずっと最後まで続いていたら非常に読み辛いのはわかると思う。
大雑把に何をやるのかを書いて、詳細は後のページにそれぞれ記すのが一般的で読み易い。
コンピュータに書くプログラム、Unityのスクリプトも同様に
void Update()
{
// なんか詳細な処理、数字の羅列…
// ・
// ・
// ・
// ・
// ・
// 延々と何画面にも続く
}
…っと書いてあると全体像や、やろうとしている処理の意図が掴み辛く、非常に読み難いプログラムになる。
void Update()
{
// キーの入力チェック();
// 移動処理();
// モーションの更新();
// if(ジャンプ可能か())
// {
// ジャンプ();
// }
}
ひとまとまりの処理を関数化し、適切な名前を付けることで処理の意図がわかりやすくなり、全体像も見通しやすくなる。
##何も引数を要求しないし何も返さない関数
返り値は空 関数名 (引数なし)
// 関数の定義
void MyFunc()
{
// やりたい処理内容
// やりたい処理内容
}
##以下工事中…
##実体を必要とする関数、必要としない関数
##同じ名前の関数だけど、引数の数や種類が違う関数
##「関数名<型名>( )」な関数
##処理内容に名前を付けてやる
##複雑な条件式を関数化する
##更新履歴
2019年12月07日 取り敢えず仮投稿