צריך עזרה בC# (בסיס) - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

צריך עזרה בC# (בסיס)


the_reaper123

Recommended Posts

Delegate היא הגדרה של פונקציה מסויימת, כיצד החתימה שלה צריכה להראות.

משתמשים בהן לדוגמא כאשר יוצרים Events, ומגדירים כיצד הפונקציה שמטפלת ב Event צריכה להראות.

בכלאופן, אם אתה רוצה, שלח לי ה"פ, אני אשיג לך ספר טוב (באנגלית) על C#.

קישור לתוכן
שתף באתרים אחרים

הנושא די מהותי, כן.

החתימה של פונקציה מורכבת מטיפוס הנתונים שהיא מחזירה, והפרמטרים שהיא מקבלת.

כאשר למשל אתה רוצה להאזין לארוע כלשהו, נניח קליק על כפתור מסויים, אתה צריך להגדיר פונקציה שמקבלת 2 פרמטרים, הראשון מטיפוס אובייקט והשני מטיפוס EventArgs. הפונקציה תחזיר Void. זאת בעצם החתימה של הפונקציה.

עכשיו נניח ואתה רוצה ליצור אירוע משלך, אתה צריך להגדיר Delegate שיגדיר כיצד החתימה של הפונקציה המטפלת באירוע צריכה להראות.

(זה לא השימוש היחיד ב Delegates אגב, זה מאפשר לך גם להעביר פונקציות בתור פרמטר למשל).

קישור לתוכן
שתף באתרים אחרים

הנושא די מהותי, כן.

החתימה של פונקציה מורכבת מטיפוס הנתונים שהיא מחזירה, והפרמטרים שהיא מקבלת.

כאשר למשל אתה רוצה להאזין לארוע כלשהו, נניח קליק על כפתור מסויים, אתה צריך להגדיר פונקציה שמקבלת 2 פרמטרים, הראשון מטיפוס אובייקט והשני מטיפוס EventArgs. הפונקציה תחזיר Void. זאת בעצם החתימה של הפונקציה.

עכשיו נניח ואתה רוצה ליצור אירוע משלך, אתה צריך להגדיר Delegate שיגדיר כיצד החתימה של הפונקציה המטפלת באירוע צריכה להראות.

(זה לא השימוש היחיד ב Delegates אגב, זה מאפשר לך גם להעביר פונקציות בתור פרמטר למשל).

חתימה של פונקציה = שם הפונקציה, מספר הפרמטרים שהיא מקבלת, וטיפוס הפרמטרים (או הסדר שלהם, אותו דבר) אם אני לא טועה זה הכל..

בשום פנים ואופן טיפוס הנתונים המוחזר לא שייך לחתימה! זה מידיעותיי על ++C, תקנו אותי אם זה השתנה ב- #C.

נ.ב שחכנו בכלל להזכיר בשביל מה מדברים על חתימות בכלל - בשביל העמסת פונקציות, למען שהמהדר ידע לאיזו מהפונקציות (הזהות בשמן) לקרוא כאשר הן נקראות בתכנית, וזה הוא עושה עפ"י החתימה.

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...