مكتبة القوالب المعيارية

من ويكيبيديا، الموسوعة الحرة

مكتبة القوالب المعيارية (STL) هي مكتبة برمجية صممت للغة سي بلس بلس.[1][2][3] توفر هذه المكتبة ثلاث مكونات رئيسية: الخوارزميات، الحاويات والمكررات. توفر المكتبة مجموعة من الأصناف الجاهزة مثل الحاويات، التي يمكن استعمالها مع أنواع البيانات الموجودة مسبقا أو أنواع البيانات التي ينشأها المستعمل وتوفر الكثير من العمليات الأساسية مثل الإسناد والنسخ. خوارزميات STL مستقلة عن أي حاوية، مما يقلل من تعقيد المكتبة.

الحاويات[عدل]

الحاوية تعريف الحاوية
pair هي حاوية ترابطية بسيطة تحتوي على عنصرين من البيانات أو من الكائنات. يدعيان first و second، حيث العنصر الأول يعتبر مفتاح والثاني يعتبر قيمة للمفتاح.
vector هي مصفوفة ديناميكيةيمكنها إعادة تحجيم نفسها تلقائيا عند الإضافة والحذف. هنالك تحسين خاص بالنوع bool حيث يسمح بتخزينه في مساحة 1 بت بدل بايت كامل.
list هي قائمة مترابطة مضاعفة حيث لا تخزن في قطعة واحدة من الذاكرة بل في أماكن متفرقة منها.
deque عبارة عن طابور ثنائي الأطراف
queue طابور بواجهة FIFO ويوفر عمليات إضافة/حذف/أمام/خلف
priority queue مثل queue ولكن العنصر ذو الأسبقية يكون في الأعلى
stack مكدس بواجهة LIFO أي العنصر المضاف الأخير يكون في الأعلى
set حاوية بيانات حيث لا يمكن تكرار عنصر أكثر من مرة واحدة
multiset مثل set ولكن تسمح بتكرار العناصر
map حاوية ترابطية حيث تحتوي على عنصرين واحد مفتاح والثاني قيمة، على عكس pair فهي تسمح بإحتواء أكثر من عقدة داخل حاوية واحدة.

مراجع[عدل]

  1. ^ Adrian Stone. "Minimizing Code Bloat: Template Overspecialization". مؤرشف من الأصل في 2017-08-23.
  2. ^ More STL algorithms (revision 2) نسخة محفوظة 24 ديسمبر 2010 على موقع واي باك مشين.
  3. ^ Sutter، Herb؛ Alexandrescu، Andrei (2004). C++ Coding Standards: 101 Rules, Guidelines, and Best Practices. Addison-Wesley. ISBN:0-321-11358-6.