קורס:"STL"
שיעור 8: סיכום מתוך הספר: ++C - מדריך מקצועי | תוכן עניינים | | סיכום STL
- STL (Standard Template Library) היא ספריית מיכלים, איטרטורים ואלגוריתמים תקנית בשפת C++. STL היא ספרייה המבוססת בעיקר על מנגנון ה- templates STL כוללת שלושה מרכיבים עיקריים:
- - מיכלים - כגון: vector, list, set, map.
- - אלגוריתמים - פעולות כגון: מיון, חיפוש, מיזוג, העתקה, החלפה, הזזה, השוואות, מציאת מינימום ומקסימום, פרמוטציות.
- - איטרטורים - הפשטה של מצביעים לאיברים במיכלים.
- בתכנון STL נבחרה הגישה בה מחלקות המיכל אינן יורשות מבסיס משותף, והאלגוריתמים מוגדרים כ- templates של פונקציות גלובליות, בכדי להשיג יעילות גבוהה ע"י הגדרת פונקציות כ inline.
- כל מרכיבי STL מוגדרים תחת מרחב השם (namespace) std. כל שמות המרכיבים בספרייה נכתבים באותיות קטנות (ללא אות רישית גדולה).
- המיכלים נחלקים לשלוש קבוצות עיקריות:
- - סדרתיים: vector, list, deque, stack, queue, priority_queue
- - ממויינים: map, set, multimap, multiset
- - משניים: valarray, string, bitset, array[1]
- האיטרטורים נחלקים למספר קטגוריות, עפ"י יכולותיהם:‑גישה אקראית, דו כווני, קדמי, קלט, פלט.
- האלגוריתמים נחלקים למספר קטגוריות עפ"י סוג הפעולות המבוצעות בהן:
- - אלגוריתמי const על סדרות
- - אלגוריתמי non-const על סדרות
- - אלגוריתמי מיון
- - אלגוריתמי קבוצה (set)
- - אלגוריתמי ערימה (heap)
- - אלגוריתמים אריתמטיים
- הספרייה התקנית מספקת תמיכה בתכנות מתמטי מדעי ע"י מספר מרכיבים:
- - valarray - template מחלקה המייצג מערך לחישובים וקטוריים אריתמטיים.
- - complex - template של מחלקה לתמיכה במספרים מרוכבים.
- - numeric_limits - template מחלקה הכולל הגדרות תחומים של טיפוסים מספריים.
מעבדה מסכמת בצע/י את המעבדה שבסוף פרק 14 בספר "C++ -מדריך מקצועי".
|