وظيفة 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;
}
ملاحظة: يمكن أن تحمل الوظائف المتعددة نفس الاسم طالما أن عدد و / أو نوع المعلمات مختلفان.