تجول C ++

C ++ الصفحة الرئيسية C ++ مقدمة C ++ ابدأ بناء جملة C ++ إخراج C ++ تعليقات C ++ متغيرات C ++ مدخلات مستخدم C ++ أنواع بيانات C ++ عوامل C ++ سلاسل C ++ C ++ الرياضيات C ++ منطقية شروط C ++ مفتاح C ++ C ++ أثناء التكرار C ++ للحلقة C ++ استراحة / متابعة صفائف C ++ مراجع C ++ مؤشرات C ++

وظائف C ++

وظائف C ++ معلمات وظيفة C ++ وظيفة C ++ الزائد

فئات C ++

C ++ OOP فئات / كائنات C ++ طرق فئة C ++ C ++ البناة محددات الوصول C ++ تغليف C ++ الوراثة C ++ تعدد الأشكال C ++ ملفات C ++ استثناءات C ++

C ++ كيف

أضف عددين

أمثلة C ++

أمثلة C ++ مترجم C ++ تمارين C ++ اختبار C ++


وظيفة C ++ الزائد


وظيفة التحميل الزائد

مع التحميل الزائد للوظائف ، يمكن أن يكون للوظائف المتعددة نفس الاسم بمعلمات مختلفة:

مثال

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

ضع في اعتبارك المثال التالي ، الذي يحتوي على وظيفتين تضيفان أرقامًا من أنواع مختلفة:

مثال

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

بدلاً من تحديد وظيفتين يجب أن تفعلا الشيء نفسه ، من الأفضل زيادة التحميل على واحدة.

في المثال أدناه ، نفرط في تحميل 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;
}

ملاحظة: يمكن أن تحمل الوظائف المتعددة نفس الاسم طالما أن عدد و / أو نوع المعلمات مختلفان.