תוכן עניינים:
הגדרה - מה המשמעות של תבנית?
תבנית היא תכנת תכנות C ++ המאפשרת לבצע פעולות וכיתות עם סוגים גנריים, המאפשרת פונקציונליות עם סוגי נתונים שונים מבלי לשכתב בלוקים קוד שלמים עבור כל סוג.
תבניות הן כלי עזר רב ערך ב- C ++, במיוחד כאשר משתמשים בהן בעומס יתר של מפעילים וירושה מרובה. תבניות מצמצמות את המאמץ הקשור לקידוד סוגי נתונים שונים לקבוצת קוד אחת ומצמצמות את מאמצי הבאגים.
Techopedia מסביר תבנית
C ++ מספק את שני הסוגים הבאים של תבניות המשמשות ליישום קונסטרוקציות כלליות, כגון רשימות, תורים, וקטורים וערימות:
- תבנית כיתתית: דומה להגדרה כיתתית רגילה אך מקודמת על ידי התבנית הבאה:
ואחריו הצהרת גוף הכיתה, כולל נתוני חברים ופונקציות. הצהרות ופונקציות חבר של תבנית כיתות נמצאות באותו קובץ כותרת. תבניות כיתות C ++ מתאימות ביותר לשיעורי מכולה. - תבנית פונקציה: מיושמת באמצעות פרמטרים של תבניות, שהם סוג פרמטרים מיוחד המשמש להעברת סוג כארגומנט פונקציה. לפיכך, פונקציונליות עשויה להתאים ליותר מסוג או מחלקה אחת מבלי לחזור על הקוד כולו. התבנית להכריז על תבנית פונקציה עם פרמטר מסוג היא אחת מהתבניות
הצהרת פונקציה_ או תבנית הצהרת פונקציה. אין הבדל בין מילות המפתח למחלקה לבין סוג השם.
ניתן לבטל קוד שנוצר על ידי תבנית על ידי מתן הגדרות מיוחדות לסוגים ספציפיים, המכונה התמחות בתבנית. גרסה מיוחדת של פונקציה עבור קבוצה נתונה של טענות תבנית ידועה כהתמחות מפורשת. תבנית כיתתית המתמחה על ידי תת קבוצה של הפרמטרים שלה, ידועה כהתמחות תבנית חלקית. התמחות מלאה מתרחשת כאשר כל פרמטר מתמחה. הגדרה זו נכתבה בהקשר של C ++