מהו ביטוי למבדה ופונקציה אנונימית ב-C#

Mhw Bytwy Lmbdh Wpwnqzyh Nwnymyt B C



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

מהו ביטוי למבדה ב-C#

ביטוי למבדה הוא דרך קצרה ותמציתית להגדיר שיטה בשורה, ללא צורך להכריז על שיטה נפרדת. זוהי בעצם שיטה אנונימית שניתן להקצות למשתנה או להשתמש בה כפרמטר, ביטויי Lambda ב-C# מיוצגים על ידי האופרטור '=>', הנקרא כאופרטור 'הולך אל':

התחביר לביטוי למבדה הוא:







( פָּרָמֶטֶר ) => ביטוי

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



int כיכר = ( איקס ) => איקס * איקס ;

בדוגמה זו, ביטוי Lambda לוקח פרמטר קלט x ומחזיר את הריבוע של x. התוצאה של ביטוי Lambda מוקצית לריבוע המשתנה והנה הקוד המלא עבור דוגמה זו:



באמצעות System ;

תוכנית הכיתה {

סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {

Func < int , int > כיכר = איקס => איקס * איקס ;

לְנַחֵם. WriteLine ( כיכר ( 6 ) ) ;

}

}

בדוגמה זו, אנו מגדירים ביטוי Lambda שלוקח פרמטר קלט של מספר שלם x ומחזיר את הריבוע שלו. הסוג Func מגדיר שביטוי Lambda לוקח פרמטר קלט של מספר שלם ומחזיר ערך שלם. אנו מקצים את ביטוי הלמבדה הזה למשתנה הריבועי, ואז אנו קוראים לו עם ערך הקלט של 6 והפלט יהיה 36.





מהי פונקציה אנונימית C#

הפונקציה האנונימית היא פונקציה שאין לה שם והיא מעין ביטוי למבדה המוגדר ונקרא inline, מבלי להכריז על שיטה נפרדת. פונקציות אנונימיות ב-C# מיוצגות על ידי מילת המפתח 'נציג', המשמשת להכרזה על שיטה חדשה עם חתימה ספציפית, התחביר של פונקציה אנונימית הוא:



נָצִיג ( פָּרָמֶטֶר ) { ביטוי }

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

נָצִיג ( int א , int ב ) { לַחֲזוֹר א + ב ; }

בדוגמה זו, הפונקציה אנונימית לוקחת שני פרמטרי קלט x ו-y ומחזירה את הסכום של f ו-g:

באמצעות System ;

תוכנית הכיתה {

סטָטִי בָּטֵל רָאשִׁי ( חוּט [ ] args ) {

Func < int , int , int > סְכוּם = נָצִיג ( int ו , int ז ) { לַחֲזוֹר ו + ז ; } ;

לְנַחֵם. WriteLine ( סְכוּם ( 2 , 3 ) ) ;

}

}

בדוגמה זו, אנו מגדירים פונקציה אנונימית שלוקחת שני פרמטרי קלט שלמים x ו-y ומחזירה את הסכום שלהם. אנו מכריזים על משתנה הסכום כסוג Func , המציין שהפונקציה לוקחת שני פרמטרים של קלט שלמים ומחזירה ערך שלם. אנו משתמשים במילת המפתח נציג כדי להגדיר את הפונקציה, ואז נקרא לה עם ערכי הקלט של 2 ו-3. הפלט יהיה 5.

סיכום

ביטויי Lambda ופונקציות אנונימיות הם מושגים רבי עוצמה ב-C# המאפשרים למפתחים לכתוב קוד תמציתי, יעיל וקל לקריאה. ביטויי Lambda משמשים להגדרת שיטות מוטבעות ללא צורך בהכרזה על שיטה נפרדת, בעוד שפונקציות אנונימיות משמשות להגדרה ולקריאת פונקציות מוטבעות ללא צורך להכריז על נציג מתודה נפרד (int x, int y) { return x + y; }. שני המושגים הם כלים חיוניים לכל מפתח C# המחפש לכתוב קוד יעיל וניתן לתחזוקה.