Visual C ++ 2010 принимает:
std::vector v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
for each (auto i in v)
std::cout << i << std::endl;
Это функция C ++ 11 или расширение Microsoft? Согласно Википедии , синтаксис C ++ 11 для каждого цикла разный:
int myint[] = {1,2,3,4,5};
for (int& i: myint)
{
std::cout << i;
}