std::initializer_list<int> l()
{
return std::initializer_list<int>{1,2,3};
}

std::vector<int> v()
{
return std::vector<int>{1,2,3};
}

int main()
{
for(auto i : l()){
std::cout << i << endl;
}
for(auto i : v()){
std::cout << i << endl;
}
}

0
0
0
1
2
3

なんで?