自作関数の引数をデフォルト引数に設定してみましょう。

ソーラー 「ねえ、てんC 次のプログラムをみてみよう」


#include <iostream>


using namespace std;


void f(int x){


cout <<x << "をとりこみました。\n";


}


int main(){


f(1);


return 0;

}


ビルド実行結果


1をとりこみました


ソーラー「このプログラムでは


自作関数fの()内の引数のint xに1を代入しています。


ところで


自作関数の引数int xには最初から数値を代入しておくことができます。



次のプログラムを


ご覧ください


#include <iostream>


using namespace std;

//ここです👇

void f(int x=1) {


cout << x << "をとりこみました。\n";


}


int main() {


f();


return 0;

}


ビルド実行結果


1をとりこみました


ソーラー「このプログラムでは


自作関数の定義で

👇

void f(int x=1) {


cout << x << "をとりこみました。\n";


}

👆

既にxの変数宣言、初期化で


xに1が代入されています。」


てんC「ソーラーさん


自作関数の実行形式が 


数値を自作関数の引数に代入していない


f();


になっています」


ソーラー「そうなんだ。


このプログラムのように


自作関数fの定義で引数となっている変数xに1が代入されていると


f();


を実行した場合


f(1);


が実行されるんだ。


もう最初から数値1がxに代入されているので


f(1);


を実行しなくても


f();


を実行しただけで


ビルド実行結果


1をとりこみました


が表示できるんだね。


このように自作関数の定義


void f(int x=1) {


cout << x << "をとりこみました。\n";


}


のように引数に数値が代入されている引数をデフォルト引数といいます。


では


次のプログラムをご覧ください


#include <iostream>


using namespace std;


void f(int x=1) {


cout << x << "をとりこみました。\n";


}


int main() {


f(5);


return 0;

}


ビルド実行結果


5をとりこみました


ソーラー「このプログラムでは


自作関数fの定義でxの値は1に初期化されています。



自作関数fを実行するときに


f(5);



変数xに別の数値を代入して実行することもできるんだよ。


これは


普通に


変数xに


x=1;


と数値が代入されている状態の後に


x=5;


と数値を代入することと同じことなんだね。」





  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る