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

الدرس الثاني للمؤشرات الى الدوال

مغلق
بدأه Super_emad55 في 5 يونيو 2006 · 9 رد · 2,155 مشاهدة · في المواضيع والدروس
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم,

رغم اني لم ارى ردود تشعرني ان هناك مهتمين, الا اني سوف اكمل شرح هذا الموضوع على الاقل:

رابطة الدرس الاول

عوده الى موضوعنا, لنستطيع عمل الاتي :

void main()
{
	cout << New_Switch(10, 20, Plus)<< endl;
	cout << New_Switch(10, 20, Divide) << endl;
}

 يجب ان نقوم بكتابت الداله الاتيه

float New_Switch(float a, float b, PF function)
{
	return function(a, b);
}

لنعرض موضوع اخر للتوضيح

لنفرض ان لدينا هتان الدالتان لطباعة كلمه مثلا, و لتكن بالشكل الاتي:

void print1(char * string)
{
	cout << "[" << string << "]" << endl;
}

void print(char * string)
{
	cout << string << endl;
}

void main()
{
 	 print(“one”);
	print(“two”);
}

فنقوم بتكوين الداله الاتيه كمؤشر لدوالنا

void (* PF) (char * string) typedef

و نضعها قبل ال main

فيصبح برنامجنا بالشكل هذا

#include <iostream>
using namespace std;


void print1(char * string)
{
	cout << "[" << string << "]" << endl;
}

void print(char * string)
{
	cout << string << endl;
}

typedef void (* PF) (char * string); 

void main()
{
	PF printfunction;
	printfunction = print;	
	printfunction("one");

	printfunction = print1;
	printfunction("one");
}

بالاضافه الى هذا يمكننا ان نقوم بعمل مصفوفه من المؤشرات الى الدوال, ف ال main تكون بهذا الشكل

void main()
{
	PF doit[] = {Plus, Minus, Multiply, Divide};

	for(int i = 0; i<4; i++) 
	cout << doit(5, 10) << endl;
}

ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust

#2

شرح جميل وكلام رائع وأتمنى لك التوفيق

abofahad5515@hotmail.com

#3

ممتاز أخي..

بارك الله فيك.

مللنا من مشاهدة الاسئلة وآن الأوان أن "يتحرّك" المنتدى بهذه المواضيع الجميلة.

#4

أشكركم شباب على الردود الجميله, و إن شاء الله سوف اكمل مجموعه من الدروس لمواضيع لا اقول صعبه, ولكن غير واضحه للكثير من الناس.

بس عندي ملاحظه: ليش تم تغير ايقونة موضوعي!!! اليس لي الاحقيه بوضع موضوعي بالشكل الذي انا اريده؟؟!! ولا حتسوا فينا زي القاده العرب :D

ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust

#5

موضوع مميز ,,, جزاك الله خير ..

وان شاء الله يستمر حماسك ........

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#6

إن شاء الله :)

ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust

#7

ماشاء الله عليك اخي عماد الشرح جميل ورائع

والواحد استفتد منه ونشط الذاكره

Khaled_Tiger

النجاح الوحيد في الحياة هو أن تستطيع أن تحيا حياتك بالطريقة التي تريدها

يخاطبني السفيه بكل قبح *** فأكره أن أكون له مجيبا

يزيد سفاهة فأزيد حلمــا *** كعود زاده الإحراق طيبا

إذا نطق السفيه فلا تجبه *** فخير من إجابته السكوت

فإن كلَمته فرَجت عنــــه *** وإن خليته كمداً يـمـــوت

#8

إن شاء الله ذاكرتك نشيطه دائما :D يا خالد

ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust

#9

موضوع جدا جميل و بصراحه أنا استفدت منه كثيرا .

جزاك الله خيرا ..

#10

و اياك اخي يوسف

ENG. IMAD, Programing is a way of life, It's in the air, we breath It's pumps through our veines, Without it, we soon crumble to dust

هذا الموضوع مغلق.

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

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

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

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

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