STL


Die STL (Standard Template Library) ist eine C++-Bibliothek, die „generische“ Datenstrukturen und Algorithmen auf der Grundlage von Templates beinhaltet.
Die STL gehört fest zu C++ und ist in der ANSI-Spezifikation genau beschrieben. Der entscheidende Punkt ist die Trennung von Daten in Containern und deren Bearbeitung durch Algorithmen mittels Iteratoren.
 

Container in Form von generischen Klassen nehmen die verschiedensten Daten auf. Der einfachste Container ist vector.
Daneben gibt es eine Reihe weiterer Container, die man leicht gegeneinander austauschen kann.


 


Hier ein kleines Beispiel mit vector zum Verständnis:


#include <iostream>
#include <vector>
#include <conio.h>
using namespace std;

class A
{
  public:
    A()         { cout << "Konstruktor"     
                       << " " << this        << endl; }
   ~A()         { cout << "Destruktor"      
                       << " " << this        << endl; }
    A(const A&) { cout << "Copy-Konstruktor"
                       << " " << this        << endl; }
};

int main()
{
  {
    vector<A> v;
    getch();
    A obj;            // ctor
    getch();
    v.push_back(obj); // copycon
    getch();          // 2*dtor
  }
  getch()
}

 
Literatur/Links:

http://cppreference.com/cppstl.html
http://en.wikipedia.org/wiki/Standard_Template_Library