第1回、第2回と半端なところで終わってしまいました 今回の第3回目はデフォルト引数について説明します。 クラスの継承と多様性(ポリモーフィズム)までいかないと では、今回の講座に入りましょう。 ウダウダ説明するよりも例を見せてしまったほうが早い気がしますので void Test(int a,float b,float c = 6.0f); 関数のプロトタイプ宣言時(←ここ重要)にデフォルト引数を指定してやります。 このTest関数の使い方は Test(5,3.4f,5.6f);//←普通にa,b,cに引数を渡す Test(5,3.4f);//←cはデフォルト引数を使う、すなわちcには6.0fが自動的に入る では、実際コードを書いて試して見ましょう //デフォルト引数 #include <iostream> using namespace std; //プロトタイプ宣言時にデフォルト引数(c = 6.0f)を書く void Test(int a,float b,float c = 6.0f); //関数の定義にはデフォルト引数の値を書かない void Test(int a,float b,float c) { cout << "a = " << a << endl; cout << "b = " << b << endl; cout << "c の引数がない場合は6.0fがc に自動的に入る c = " << c << endl; } int main() { int a = 5; float b = 3.4f,c = 5.6f; Test(a,b,c);//←普通にa,b,cに引数を渡す Test(a,b);//←cはデフォルト引数を使う、すなわちcには6.0fが自動的に入る return 0; } デフォルト引数を使う上で1点注意があります。 void Test(float c = 6.0f,int a,float b); や void Test(int a,float c = 6.0f,float b); はコンパイルエラーになります。 ちなみに、デフォルト引数が2個以上の場合も右側に書けば大丈夫です // 2個以上のデフォルト引数を持たせたい場合 void Test(int a,float b,float c = 6.0f,int d = 6); デフォルト引数を使うことで vote((^ω^)わかったお[23],普通[0],。(`ω´#)。わかりにくぃぜぇえええええ[1]) |