Contenitori (C++ moderno)
Per impostazione predefinita, utilizzare il vettore come contenitore predefinito sequenziale in C++.Questo è l'equivalente dell'elenco <T> in altre lingue.
vector<widget> v;
v.push_back( “Geddy Lee” );
Utilizzare la mappa (non unordered_map) come contenitore predefinito associative.Utilizzare multiset multimap, set, per degenerate & casi multi.
map<string, string> phone_book;
phone_book[“Alex Lifeson”] = “+1 (416) 555-1212”;
Quando è necessario ottimizzare le prestazioni, è possibile utilizzare:
il tipo di matrice per l'incorporamento è importante, e.g., come un membro di classe.
unordered_map, et al.: basso overhead di ogni elemento (principale) e la ricerca di ora costante (minore perché utilizzare simboli O(K)) O (log N) valido.Più difficili da utilizzare in modo corretto ed efficiente, a causa di fastidio + bordi netti.
Vettore ordinato.(Vedere: algoritmi.)
Non utilizzare matrici C.(Per le API di versioni precedenti, utilizzare f (vec.data(), vec.size()); .)