For your reference. Try this code and you will experiment such inconsistencies.

Code:
#include <iostream>
#include <vector>

using namespace std;

int main()
{
  int length = 5;
  int num = 10;
  
  vector< vector<int> > mtr;
  
  mtr.resize(length);
  for(int i = 0; i < length; i++)
  {
    mtr[i].reserve(length);

    for (int j = 0; j < length; j++)
    {
   //   mtr[i][j] = num;
      cout<<"mtr["<<i<< "]["<< j<< "]= "<< mtr[i][j] <<endl;
    }

    cout << "SIZE: " << mtr[i].size() << endl;
  }  
    
  return 0;
}