PDA

View Full Version : delegate???



mazaher5723
شنبه 05 فروردین 1391, 16:44 عصر
هرکی درموردdelegate می دونه؟
لطف کنه توضیح بده.
در مورد کاربرد اش هم ..



باتشکر
مظاهر

Pouyan2010
شنبه 05 فروردین 1391, 18:11 عصر
سلام دوست عزیز
Delegate خیلی کاربرد داره ولی من یه مثال ساده برات می زنم. خودت یکم سرچ کنی خیلی چیزا دستگیرت میشه:
ببین وقتی شما می خواید یه Thread تعریف کنید طبق تعریف در هر زبان برنامه نویسی شما به سادگی کار را به Thread نسبت می دید، حتی در دات نت هم این امکان وجود داره ولی در دات نت موقع assign میگه وایستا!، ممکنه که کار ارسالی به thread شرایط را نداشته باشه، شرایط چین یکی اینکه تابع باید Void باشه و نباید چیزی به تابع Return بشه، چون Thread جایی نیست که چیزی بخواد بهش بتابه.( هرچند در شرایطی این امکان وجود داره)، بعد شما مجبورید یک ThreadStart تعریف کنید، موس را که روی ThreadStart نگه دارید می گه delegate! توی کتاب OOP میگه وقتی کسی توو مجلس سناریو امریکا فوت کنه، رئیس جمهور امریکا شخصا پا نمیشه بیاد مراسم اون شخص که فوت کرده، نمایندش را می فرسته، نماینده همون کار را می کنه، همون ارج را داره، اینجا هم میگه کار را بده به delegate که ThreadStart باشه بعد اون نماینده کار تو میشه پیش Thread. در واقع deleagte معنی نماینده رو میده، حالا می تونه توی یه کلاس باشه یا هر جای دیگه. نماینده ، نمایندست.