- Mastering C++ Programming
- Jeganathan Swaminathan
- 217字
- 2021-07-02 18:28:48
The Standard Template Library architecture
The C++ Standard Template Library (STL) offers ready-made generic containers, algorithms that can be applied to the containers, and iterators to navigate the containers. The STL is implemented with C++ templates, and templates allow generic programming in C++.
The STL encourages a C++ developer to focus on the task at hand by freeing up the developer from writing low-level data structures and algorithms. The STL is a time-tested library that allows rapid application development.
The STL is an interesting piece of work and architecture. Its secret formula is compile-time polymorphism. To get better performance, the STL avoids dynamic polymorphism, saying goodbye to virtual functions. Broadly, the STL has the following four components:
- Algorithms
- Functors
- Iterators
- Containers
The STL architecture stitches all the aforementioned four components together. It has many commonly used algorithms with performance guarantees. The interesting part about STL algorithms is that they work seamlessly without any knowledge about the containers that hold the data. This is made possible due to the iterators that offer high-level traversal APIs, which completely abstracts the underlying data structure used within a container. The STL makes use of operator overloading quite extensively. Let's understand the major components of STL one by one to get a good grasp of the STL conceptually.
- UI設計基礎培訓教程
- 數據庫系統教程(第2版)
- Objective-C應用開發全程實錄
- ASP.NET Core 5.0開發入門與實戰
- Mastering Unity Shaders and Effects
- TypeScript實戰指南
- 從Excel到Python:用Python輕松處理Excel數據(第2版)
- 程序是怎樣跑起來的(第3版)
- Java Web程序設計任務教程
- 軟件測試技術指南
- Learning Concurrent Programming in Scala
- Mastering openFrameworks:Creative Coding Demystified
- Python圖形化編程(微課版)
- Solr Cookbook(Third Edition)
- Essential C++(中文版)