Функция Sequence-zip для c ++ 11?

С новым циклом for на основе диапазона мы можем написать код вроде

for(auto x: Y) {}

Какой IMO является огромным улучшением по сравнению с (например)

for(std::vector<int>::iterator x=Y.begin(); x!=Y.end(); ++x) {}

Может ли он использоваться для цикла по двум одновременным циклам, как функция Pythons zip ? Для тех, кто не знаком с Python, код:

Y1 = [1,2,3]
Y2 = [4,5,6,7]
for x1,x2 in zip(Y1,Y2):
    print x1,x2

Выдает в качестве вывода (1,4) (2,5) (3,6)

87
задан Xeo 14 December 2011 в 20:20
поделиться