関数の回。再帰関数の話は今回はなし。
◆戻り値の無い関数の書き方
//buy関数の定義
void buy(int x)
{
cout << x <<"万円の車を買いました\n";
}
//buy関数の利用
int main()
{
buy(20);
return 0;
}
※buyの中の20がbuy関数に渡される
引数2個も可能 void buy(int x, int y)
引数無しも可能 void buy()
◆戻り値のある関数の書き方
//buy関数の定義
int buy(int x)
{
cout << x <<"万円の車を買いました\n";
return x;
}
//buy関数の利用
int main()
{
int sum = buy(20);
return 0;
}
※returnで戻り値を返す
インライン関数を使うと処理が早くなることがある
◆関数プロトタイプ宣言
関数の呼び出しを先に行って後から関数を定義する場合、
関数の宣言→呼び出し→定義の順に書く必要がある。
デフォルト引数を設定しておくと、引数が指定されてない時にそれを使って計算する。
void buy(int x=10);
但し引数が複数ある場合、1つ引数を指定したらそれより右は全て引数が必要になる。
◆関数のオーバーロード
int max(int x, int y)
double max(double x, double y)
引数の方や数が違っていれば、同じ名前の関数を複数定義できることを利用して、複数の場合に対応できる
◆関数テンプレート
扱う型だけが異なる関数をひながたから作成
template <class T>
T maxt(T x, T y)
if(x>y)
return x;
else
return y;
}
コンパイルの際に「T」の部分を指定した型(int,doubleなど)に置き換えた関数が作成される。