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

function overload

بدأه mnoyah في 11 أبريل 2011 · 12 رد · 964 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

كيفكم

اريد مساعدتكم في درس function overload

اريد منكم التعريف باللغه الانجليزيه والعربيه

وايضا اريد صياغه عامه واي اشياء اخرى تخص الموضوع

الله يخليكم اريدها ضروري

انا مبتدئه في الحاسب

وشكرا

get-4-2011-almlf_com_6vjvohds.jpg
#2

مرحبا

هذا الرابط يحتوى على ما تريد

/index.php?showtopic=232344&hl=%20%D8%A7%D9%84%D8%A8%D8%AD%D8%AB%20...overloading&st=0

بالتوفيق


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#3

يعطيك العافيه اخوي

بس انا الدرس لم يشرح لي بعد ولكن الدكتوره طلبت منا نشاط بهذا الموضوع

اريد مساعده اكثر الله يخليكم

واكون شاكره لكم اخواني

get-4-2011-almlf_com_6vjvohds.jpg
#4
mnoyah كتب:

يعطيك العافيه اخوي

بس انا الدرس لم يشرح لي بعد ولكن الدكتوره طلبت منا نشاط بهذا الموضوع

اريد مساعده اكثر الله يخليكم

واكون شاكره لكم اخواني

اجاوبك بكلمه واحده

google

#5

يعطيك العافيه

اخوي ماقصرت

هل هذا هو التعريف الصحيح

معنى التحميل الزائد للدوال ھو أن يكون ھناك دالتين بنفس الاسم ويختلفان في نوع البارامترات (متغيرات الدالة)

وماهي الصياغه العامه

وهل هناك انواع لها

get-4-2011-almlf_com_6vjvohds.jpg
#6

ارجوكم ساعدوني

get-4-2011-almlf_com_6vjvohds.jpg
#7
اقتباس

معنى التحميل الزائد للدوال ھو أن يكون ھناك دالتين بنفس الاسم ويختلفان في نوع البارامترات (متغيرات الدالة)

نعم بالاضافة انهم يمكن ان يختلفوا فى نوع البيانات الناتجة return data type

ويجب ان يكونوا فى فئة واحدة the same class

اما لو كانت دالة فى فئة A

وقمت باعادة كتابتها فى الفئة B بنفس الانواع والمرسلات parameters وكانت الفئة B ترث الفئة A

فهنا تسمى هذه العملية Function Override

http://en.wikipedia.org/wiki/Method_overriding

اتمنى اكون ساعدتك

تحياتى


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#8

هل هناك عيوب ومميزات للتحميل الزائد ؟

وماهي الصياغه العامه

.....

ماذا يعني هذا الكلام؟

Operator overloading means defining what the operators ie - * / & | etc mean in terms of your object, by writing appropriate methods in the object's code. This is not permitted in java.

Method overloading is using the same method name in methods with different paramters ie

setSize(Dimension d)

setSize(int height, int width)

وهذا؟

Functions with similar functionality can share the same name, eg.:

Without overloading:

int iabs (int x);

double dabs (double x);

double cabs (complex x);

With overloading:

int abs (int x);

double abs (double x);

double abs (complex x);

الله يخليكم ساعدوني

تم تعديل هذه المشاركة بواسطة mnoyah في 16 أبريل 2011 في 18:27

get-4-2011-almlf_com_6vjvohds.jpg
#9

هو طبعا مميز جدا والعيب يكون فى تطبيقه من ناحية المبرمج

ولهذا يجب ان تبدأ من الاصغر للاكبر بمعنى

short calculate(short sh);
int calculate (int in);
long calculate(long ln);
double calculate(double dl);

فالمترجم او ال compiler يبحث عن اول دالة يمكنها تنفيذ المطلوب بدون اخطاء

ولو وضعت الدالة الاخيرة فى البداية فسينفذها دائما

لان النوع double يمكنه استيعاب كل الانواع اعلاه

اما عن ما كتبته انت فهذا يسمى operator overloading

وهو التحميل الزائد للعمليات مثل الجمع والطرح والقسمة والمقارنة والطباعة وغيرها

وهى ميزة قوية جدا وغير موجودة فى الجافا بالفعل

ومن الافضل ان تتعلمها من كتاب لان شرحها يطول هنا

او ابحث عنها فى المنتدى وستجد دروسا تشرحها

http://en.wikipedia.org/wiki/Operator_overloading

اما الجزء الاخير فهو يوضح لك ان الدوال اذا اختلفت فى الاسم ولو بحرف واحد لم يعد هذا function overloading

حتى وان كانت تؤدى نفس الوظيفة او المهمة

تحياتى


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#10

يعطيك العافيه

ماقصرت

get-4-2011-almlf_com_6vjvohds.jpg
#11

معليش اخواني ادري ازعجتكم

بس هذا اخر طلب إن شاء الله

اريد منكم سؤال على التحميل الزائد

لكي اضعه في نشاطي والاستاذه راح تطلب من الطالبات حله في المحاضره

وشكرا

get-4-2011-almlf_com_6vjvohds.jpg
#12

مربع الارقام

اما رقم صحيح int واما رقم عشرى double

// Overloaded functions.
#include <iostream>
using std::cout;
using std::endl;

int square(int y)                        	
{                                          	
 	cout << "square of integer " << y << " is ";
 	return y * y;                           	
}	

double square(double z)                  	
{                                          	
 	cout << "square of double " << z << " is "; 
 	return z * z;                           	
 }  

int main()
 {
 	cout << square( 5 ); // calls int version
 	cout << endl;
 	cout << square( 3.5 ); // calls double version
 	cout << endl;
 	return 0;
}

هذا مثال


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#13

مشكور اخوي والله ماقصرت

الله يوفقك

get-4-2011-almlf_com_6vjvohds.jpg

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