בנוסף למשתנים הפשוטים מספקת Tcl מערכים. מערכים אלה הם אוסף של אלמנטים בעלי שם וערך. שם משתנה במערך מורכב משם המערך בו הוא נמצא ושמו שלו במערך. מערכים אלה נקראים אסוציאטיביים על מנת להבדילם ממערכים רגילים המוכרים משפות התכנות. מערכים כאלה מאגדים משתנים שהיו יכולים להיות מוגדרים בנפרד ע"י פקודת set. להלן דוגמת קוד: set grades(haim) 90 הפקודה הראשונה ישצרה מערך בשם grades, אם לא היה קיים קודם. בנוסף, נוצר אלמנט בשם haim במערך , אם לא היה קיים קודם, אשר קיבל את הערך 90. הפקודה השנייה מוסיפה אלמנט נוסף למערך והשלישית מחזירה את ערך המשתנה haim. בעיה אפשרית בשימוש בשמות בתור אינקסים היא שיש צורך לזכור אותם. ניתן להשתמש בפקודה array כדי לגשת לשמות האינדקסים באופן עקיף. בתכנית הבאה יודגם השימוש בפקודה array : "set person_info(name) "Fred Smith occupation == plumber<= בדוגמא יש שימוש בפקודה array כדי לקבל את שמות האינדקסים
במערך. סדר המשתנים שונה מסדר ההכנסה משום שהפקודה array מציגה את השמות
לאו דווקא בסדר המקורי. הסינטקס של הפקודה array : ארגומנט ה-option מציין את סוג הפעולה על המערך (בדוגמא למעלה - שמות האינדקסים) ששמו הוא arrayName. רשימת האופציות השונות לשימוש בפקודה מצויה בדפי ה-man.
|
< המדריך > משתנים
מערכים אסוציאטיביים |
||||||||
|
|||||||||