Überladen von C++- Funktionen


Funktionsüberlastung

Beim Überladen von Funktionen können mehrere Funktionen denselben Namen mit unterschiedlichen Parametern haben:

Beispiel

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

Betrachten Sie das folgende Beispiel mit zwei Funktionen, die Zahlen unterschiedlichen Typs hinzufügen:

Beispiel

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;
}

Anstatt zwei Funktionen zu definieren, die dasselbe tun sollen, ist es besser, eine zu überladen.

Im folgenden Beispiel überladen wir die plusFuncFunktion, damit sie sowohl für als auch int funktioniert double:

Beispiel

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;
}

Hinweis: Mehrere Funktionen können den gleichen Namen haben, solange die Anzahl und/oder Art der Parameter unterschiedlich ist.