#APG4b / C++
##オーバーロード
「引数の型」または「引数の数」が異なる場合は、同じ名前の関数を定義することができます。これを関数のオーバーロードと言います。
次のプログラムでは「2つの引数を取るmy_min関数」と「3つの引数を取るmy_min関数」を定義しています。
#include <bits/stdc++.h>
using namespace std;
// 2つの引数のうち最も小さい値を返す
int my_min(int x, int y) {
if (x < y) {
return x;
}
else {
return y;
}
}
// 3つの引数のうち最も小さい値を返す
int my_min(int x, int y, int z) {
if (x < y && x < z) {
return x;
}
else if (y < x && y < z) {
return y;
}
else {
return z;
}
}
int main() {
int answer = my_min(10, 5); // 2つの引数
cout << answer << endl; // 5
answer = my_min(3, 2, 5); // 3つの引数
cout << answer << endl; // 2
}
##コンテナ
範囲for文はコンテナと呼ばれるデータ型に対して使うことができる。
配列の要素に対する処理ではなく、具体的に何回処理を繰り返せば良いのかということも分からない。
→この処理にはwhile文が適している。
内容 | 間違い | 正解 |
---|---|---|
配列 | scores.a[i] | scores.a(i) |