الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما مشكلة هذا الكود (التحميل الزائد)

بدأه اسم مخالف 66 في 13 مايو 2010 · 2 رد · 448 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم زرحمة الله

انا اتعلم سي ++ والان وقعت في مشكلة اتعلم الان كيف اعمل functions بنفس الاسم عن طريق التحميل الزائد لكن هناك مشكلة ....



using namespace std;

int add (int a, int b)
{
return a + b;
}
float add (float a, float b)
{
return a + b;
}



int main(void)
{
cout << add(5,5) << endl;
cout << add( 1.5,5.5) << endl;

return 0;



}
#include <iostream>

الخطأ

error C2668: 'add' : ambiguous call to overloaded function

وشكرا

عند تغيير ال parameters type من float الى double ينجح الامر لماذا؟

#2

يجب أن تضع الحرف f بعد 1.5 و 5.5 لتوضح أنها أرقام float، وبهذا تصبح الجملة الثانية:

cout<<add(1.5f, 5.5f)<<endl;

والله أعلم

بالتوفيق

2

هذه الجملة خاطئة  :wacko: 


#3

يعطيك العافية يا عبود يا قاهر الفهود :P

شكل الكتاب فيه اخطاء

+1 :)

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…