C++容器嵌套容器的遍历输出问题

C++中容器嵌套容器的遍历问题
在外层容器中嵌套一个包含整型数据的容器,对数据进行遍历
#include<iostream>
using namespace std;
#include<vector>

//容器嵌套容器
void test01()
{
    vector<vector<int>> v;

    //创建小容器
    vector<int> v1;
    vector<int> v2;
    vector<int> v3;
    vector<int> v4;

    for (int i = 0; i < 4; i++)
    {
        v1.push_back(i + 1);
        v1.push_back(i + 2);
        v1.push_back(i + 3);
        v1.push_back(i + 4);
    }

    //将小容器插入到大容器中
    v.push_back(v1);
    v.push_back(v2);
    v.push_back(v3);
    v.push_back(v4);
    
    //通过大容器,把所有数据遍历一遍
    for (vector<vector<int>>::iterator it = v.begin(); it != v.end(); it++)
    {
        for (vector<int>::iterator vit = (*it).begin(); vit != (*it).end(); vit++)
        {
            cout << (*vit) << " ";
        }
        cout << endl;
    }
}

int main()
{
    test01();
    return 0;
}
通过上述代码的for循环中,我希望能打印输出内层的一个容器所有内容后换行,但运行结果却是所有数据都在一行,直到遍历完所有数据才换行,不知该如何修正。

你只有一行数据