C ++関数のオーバーロード


関数のオーバーロード

関数のオーバーロードを使用すると、複数の関数が異なるパラメーターで同じ名前を持つことができます。

int myFunction(int x)
float myFunction(float x)
double myFunction(double x, double y)

次の例を考えてみましょう。この例には、異なるタイプの数値を追加する2つの関数があります。

int plusFuncInt(int x, int y) {
  return x + y;
}

double plusFuncDouble(double x, double y) {
  return x + y;
}

int main() {
  int myNum1 = plusFuncInt(8, 5);
  double myNum2 = plusFuncDouble(4.3, 6.26);
  cout << "Int: " << myNum1 << "\n";
  cout << "Double: " << myNum2;
  return 0;
}

同じことを行う必要がある2つの関数を定義する代わりに、1つをオーバーロードすることをお勧めします。

以下の例では、関数をオーバーロードして、とplusFuncの両方で機能しint ますdouble

int plusFunc(int x, int y) {
  return x + y;
}

double plusFunc(double x, double y) {
  return x + y;
}

int main() {
  int myNum1 = plusFunc(8, 5);
  double myNum2 = plusFunc(4.3, 6.26);
  cout << "Int: " << myNum1 << "\n";
  cout << "Double: " << myNum2;
  return 0;
}

注:パラメーターの数やタイプが異なる限り、複数の関数に同じ名前を付けることができます。