אתה נמצא כאן אופרטורים של מערכים (המשך)

:נביט בדוגמא הבאה

($a,$b,$c) = (1,2,3);
/* תתבצע השמה בהתאמה */
       # $a=1 $b=2 $c=3
($a,$b) = ($b,$a);      # תתבצע החלפה בין התכנים של המשתנים הסקלרים
($d,@fred) = ($a,$b,$c)
/* תתבצע השמה של התוכן של a$ ב- d$ ו- fred@ יהיה (b,$c$) */

($e,@fred) = @fred;
/* השמה זו תוציא מ- fred@ את האלמנט הראשון ותציב אותו ב - e$ עתה fred@ יהיה (c$) ו- e$ יהיה b$. */
 

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

משתנה המערך חייב להופיע אחרון במערך הליטרלי, כיוון שמשתנה המערך הוא "חמדני" ולוקח את כל הערכים. המשתנים שיבואו אחריו יקבלו undef .









להוספת תגובה, אנא התחברו לדרכונט.