Dzisiaj w kodzie popełnionym przez kogoś z firmy, odnalazłem perełkę pokazującą inny sposób tworzenia pętli for w oparciu o iteratory. Tym drobiazgiem czyniącym róznicę jest sprytne wykorzystanie operatora przecinka i konstruktora iteratora. Wygląda to tak:
#include <vector> #include <iostream> int main() { int array[] = { 1, 2, 3, 4, 5, 6, 7, 8 }; std::vector<int> vector(array, array+8); for ( std::vector<int>::const_iterator it(vector.begin()), end(vector.end()); end != it; ++it ) std::cout << *it << std::endl; return 0; }
Takie proste, a jakie ładne.