STL — Standard Template Library
Iteratori
Un iterator este un pointer generalizat care permite parcurgerea unui container fără a cunoaște implementarea sa internă.
vector<int> v = {10, 20, 30, 40, 50};
// Iterator explicit
vector<int>::iterator it;
for (it = v.begin(); it != v.end(); ++it) {
cout << *it << " ";
}
// Cu auto (recomandat)
for (auto it = v.begin(); it != v.end(); ++it) {
cout << *it << " ";
}Iteratori speciali
// Iterare inversă
for (auto it = v.rbegin(); it != v.rend(); ++it)
cout << *it << " ";
// 50 40 30 20 10
// Iteratori în algoritmi
auto minIt = min_element(v.begin(), v.end());
cout << *minIt << endl; // 10
auto pos = find(v.begin(), v.end(), 30);
if (pos != v.end()) cout << "Gasit!" << endl;