Container

Zwei grundlegende Arten von Containern:

Im Zweifelsfall vector<T> nehmen ...


Image vector Image list


Wichtige Zugriffsfunktionen:

Standard-Iteratoren:

Und noch die Grösse:
  size()



#include <vector>  // vector headers
#include <iostream>
using namespace std;
int main()
{
   vector<double> v; // empty <double> vector
   double x;
   while ( cin >>  x ) { // read input until EOF
     v.push_back(x); // append in vector
   }
   // classical loop, mit Index
   for (int i = 0; i < v.size(); i++ ) {
     cout << v[i];
   }
   // container loop mit Iterator
   for ( vector<double>::iterator vp = v.begin(); vp != v.end(); vp++ )
     { 
       cout << *vp ; // de-referencing as for pointers
     }
   // am einfachsten mit C++-11 auto und foreach loop
   for ( auto vx : v )
     { 
       cout << vx ; // vx enthaelt jeweils direkt Element
     }
}


Wozu Iteratoren?

Zugriff auf einzelne Elemente direkt mit Index ( v[i]) funktioniert und ist leicht verständlich, wozu also den Umstand mit Iteratoren ?


GDuckeck 2019-08-01