מפעיל עקיפה

מְחַבֵּר: Lewis Jackson
תאריך הבריאה: 8 מאי 2021
תאריך עדכון: 13 מאי 2024
Anonim
תיעוד מניידת סמויה, עקיפה מסוכנת של נהג משאית על כביש  264 בדרום
וִידֵאוֹ: תיעוד מניידת סמויה, עקיפה מסוכנת של נהג משאית על כביש 264 בדרום

תוֹכֶן

הגדרה - מה המשמעות של מפעיל העקיפה?

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

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

מפעיל העקיפה ידוע גם בשם מפעיל הגמילה.

מבוא ל- Microsoft Azure ו- Microsoft Cloud | במהלך מדריך זה תוכלו ללמוד על אודות מיחשוב ענן וכיצד Microsoft Azure יכולה לעזור לכם להעביר ולנהל את העסק שלכם מהענן.

Techopedia מסביר את מפעיל העקיפה

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

C # מאפשר להשתמש במצבים רק באזור לא בטוח, מה שמשמע כי בטיחות הקוד באזור זה לא מאומתת על ידי זמן הריצה השפה הנפוצה (CLR). באזור הלא בטוח, מפעיל indirection רשאי לקרוא ולכתוב למצביע. ההצהרות C # הבאות ממחישות את השימוש של מפעיל העקיפה:
  • int a = 1, b; // שורה 1
  • int * pInt = & a; // שורה 2
  • b = * pInt; // שורה 3
בשורה הראשונה למעלה, a ו- b הם משתנים שלמים ו- a מוקצה לערך של 1. בשורה 2, הכתובת של a מאוחסנת ב מצביע המספר שלם מספר (שורה 2). מפעיל ההפניה משמש בשורה 3 להקצאת הערך בכתובת אליה מצביע pInt למשתנה מספר שלם b.

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

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