التحميل الزائد لدالة

التحميل الزائد لدالة لى هو القدرة على إنشاء دوال متعددة بنفس الاسم لكن بتطبيقات مختلفة. ستعمل استدعاءات دالة محملة بشكل زائد على تنفيذ محدد لتلك الوظيفة بما يتناسب مع سياق الاستدعاء ، مما يسمح باستدعاء وظيفة واحدة لأداء مهام مختلفة اعتمادًا على السياق. لنأخذ مثالا بسيطا:

لنعرف الدالة ضرب لأعداد صحيحة كالآتي:

    
   الدالة		ضرب		(	ا صحيح ، ب صحيح  	)	صحيح 	 {
                ارجع ا × ب
    }
                                                                                    

ونقوم بزاية تعريف للدالة ضرب لكن هذه المرة لأعداد حقيقية

    
   الدالة		ضرب		(	ا حقيقي ، ب حقيقي 	)	حقيقي	 {
                ارجع ا × ب
    }
                                                                                

كما نلاحظ : إنه نفس اسم الدالة ، لكن بمنطلقات مختلفة و/أو بنوع إرجاع مختلف. هذا ما نسميه زيادة التحميل؛ حيث نحمل اسم الدالة ضرب شكلا آخر من الحساب مع الحفاظ على نفس اسم الدالة .

الآن يمكن استدعاء الدالتين :


    الدالة الاصل()	{

         المتغير		ا_ص ، ب_ص صحيح  :=   1 ،   2	
        المتغير		ا ، ب حقيقي :=   1.0،  2.0	
    
         اكتب		(	ضرب(	 ا_ص  ، ب_ص 	)		) 
         '/س'.اكتب	()					
         اكتب		(	ضرب( ا 	 ، ب	)		) 			

}		
                                                                                

الناتج هو :

2

2.0000000

يتم استدعاء ضرب العددين الصحيحين والعددين الحقيقين بنفس اسم الدالة ؛ والمترجم يقوم باستنباط الدالة المعرفة التي يجب استدعاؤها .