עבור לתוכן

C# return value

Featured Replies

פורסם

היי

אני תמיד משתמש בreturn אבל אף פעם לא הבנתי מה הפירוש של המשפטים הבאים:

return -1

return 1

return 0

איזה סוג ביטוי זה ? ומהו מבצע ?

פורסם
  • מחבר

כן אבל אני טיפה מבולבל בגלל שקראתי באיזה ספר שזה מחזיר כל מיני ערכים למערכת הפעלה, אני יודע ש0 זה שקר ו1 זה שקר (במידה והפונקציה הצליחה אז היא אמת אחרת היא שקר?)ולגבי הretun -1 אני לא יודע מה זה.

פורסם

ערבבת פה נושאים לא קשורים בשום צורה.

קודם כל, קרא על פונקציה כאן.

ספציפית, השורה הזו:

פונקציה היא שגרה המחזירה ערך (כלומר יש לה פלט).

הפקודה return אומרת איזה ערך מחזירה הפונקציה.

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

פונקציות גם לא חייבות בכלל להחזיר int - הן יכולות לדוגמה להחזיר double (נניח, פונקציות מתמטיות כמו Math.Sin ו-Math.Cos), ולמעשה כל טיפוס אחר שמוגדר לך (int, double, bool, object, מערך וכו').

לגבי עניין ה-0 ו-1: לפעמים נהוג שפונקציה מסוימת מחזירה ערך המציין האם היא הצליחה או לא. יש כמה דרכים לעשות את זה, והן נתונות לבחירת המתכנת. אפשר לעשות שהפונקציה מחזירה פשוט ערך bool, שפשוט אומר אם הפונקציה הצליחה (true) או נכשלה (false). אופציה נוספת היא שהפונקציה מחזירה ערך int, שמציין את ה"תוצאה" של הפונקציה. בד"כ אומרים ש-0 הוא "הצלחה", וכל ערך אחר הוא "כשלון", כאשר לערכים שונים יש משמעויות שונות. לדוגמה, 1 יכול לציין שהפונקציה נכשלה מסיבה אחת, 2 מציין שהפונקציה נכשלה מסיבה אחרת וכו'.

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

ארכיון

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

דיונים חדשים