alocar vetores (ou vetores de vetores) dinamicamente

Preciso alocar dinamicamente matrizes 1-D e 2-D cujos tamanhos são dados em tempo de execuçã

Eu consegui "descobrir"std::vector e acho que se encaixa nos meus propósitos, mas gostaria de perguntar se o que escrevi está correto e / ou pode ser melhorad

Isto é o que estou fazendo:

#include <vector>

typedef std::vector< std::vector<double> > matrix;

//... various code and other stuff

std::vector<double> *name = new std::vector<double> (size);
matrix *name2 = new matrix(sizeX, std::vector<double>(sizeY));

questionAnswers(7)

yourAnswerToTheQuestion