vector n-dimensional

Digamos que quiero declarar un vector de un vector de un vector de ... (hasta n dimensiones).

Al igual que:

using namespace std;
// for n=2
vector<vector<int> > v2;
// for n=3
vector<vector<vector<int> > > v3;
// for n=4
vector<vector<vector<vector<int> > > > v3;

¿Hay alguna manera de hacer esto para una n arbitraria con metaprogramación de plantillas?

Respuestas a la pregunta(1)

Su respuesta a la pregunta