Standart Şablon Kütüphanesi

(STL sayfasından yönlendirildi)

İlk olarak HP tarafından geliştirilmeye başlanan, daha sonra C++ standardına dahil edilen generic programlama modeliyle geliştirilmiş kütüphanedir. Daha çok STL şeklinde kısa ismiyle anılır.

STL, nesne yönelimli bir kütüphane değildir. Generic bir kütüphanedir. Bu özelliğiyle, genel amaçlı algoritmalar (sort, find, vs.) çok çeşitli container yapılarında kullanılabilirler.

C++ standardı, STL içindeki yapıların performans arayüzlerini ve performans kriterlerini belirler. Örneğin, vector sınıfından bir elemanın çağrılma işlemi sabit süre almalıdır. (Big-Oh gösterimiyle, O(1) olmalıdır.)

Container Sınıfları[1] değiştir

C++ container sınıfları bazı ortak ve bazı kendine özgü fonksiyonlar (algoritmalar) bulunduran veri yapılarıdır. Kullanılabilmeleri için ana koda dahil edilmeleri gerekir. Bu da #include yöntemi ile gerçekleştirilir. Örneğin std::vector sınıfını ana koda dahil etmek için #include <vector> kullanılır. Aşağıda ana koda dahil edebileceğiniz container türleri yer almaktadır.

<vector>[2] değiştir

<array>[3] değiştir

<list>[4] ve <forward_list>[5] değiştir

<set>[6] ve <unordered_set>[7] değiştir

<map>[8] ve <unordered map>[9] değiştir

<deque>[10] değiştir

<stack>[11] değiştir

<queue>[12] değiştir

<priority_queue>[13] değiştir

Algoritmalar[14] değiştir

Standard Şablon Kütüphanesindeki <algorithm> sınıfı birçok farklı container türünde kullanılabilen veya sadece bir container türüne özel fonksiyonlar bulundurur. Bu fonksiyonlardan yararlanabilmek için <algorithm> sınıfını ana koda dahil etmek gerekir. Bu da #include <algorithm> ifadesi ile gerçekleştirilir.

binary_search değiştir

find değiştir

count değiştir

search değiştir

copy değiştir

move değiştir

for_each değiştir

all_of değiştir

sort değiştir

Kaynakça değiştir

  1. ^ "Containers library - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  2. ^ "std::vector - cppreference.com". en.cppreference.com. 28 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  3. ^ "std::array - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  4. ^ "std::list - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  5. ^ "std::forward_list - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  6. ^ "std::set - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  7. ^ "std::unordered_set - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  8. ^ "std::map - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  9. ^ "std::unordered_map - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  10. ^ "std::deque - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  11. ^ "std::stack - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  12. ^ "std::queue - cppreference.com". en.cppreference.com. 24 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  13. ^ "std::priority_queue - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021. 
  14. ^ "Algorithms library - cppreference.com". en.cppreference.com. 26 Haziran 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Temmuz 2021.