C++ İşlev Aşırı Yüklemesi


İşlev Aşırı Yüklemesi

İşlev aşırı yüklemesi ile birden çok işlev, farklı parametrelerle aynı ada sahip olabilir:

Örnek

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

Farklı türde sayılar ekleyen iki işlevi olan aşağıdaki örneği göz önünde bulundurun:

Örnek

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

Aynı işi yapması gereken iki işlevi tanımlamak yerine birini aşırı yüklemek daha iyidir.

Aşağıdaki örnekte, hem ve plusFunchem de için çalışması için işlevi aşırı yükledik :intdouble

Örnek

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

Not: Parametrelerin sayısı ve/veya türü farklı olduğu sürece, birden çok işlev aynı ada sahip olabilir.