c++如何构建一个动态的二维数组类或者结构体

请问一下,c++如何构建一个动态的二维数组类或者结构体啊,用于保存n*4的二维数据

我写的这个类是一维的,怎么改造成动态二维的啊,目的是用于保存至queue里

class Point//点类
{
public:
    //使用初始化表初始化点类
    Point(float a = 0, float b = 0, float c = 0, int d = 0) :x(a), y(b), z(c), refl(d) {}

protected:
    float x;
    float y;
    float z;
    int refl;

};

呃。。。自己琢磨了半天,搞出来了(平常一般算法部署只写python,c++真难,淦!)

#include <iostream>
#include <vector>
#include <queue>

using namespace std;

class Point {
    public :
        vector<vector<float>> point_data;
        Point(vector<vector<float>> points) : point_data(points){}
};


int main()
{
    int num = 10;
    vector<vector<float>> state(num, vector<float>(4, 0));
    state[2][3] = 2;
    state[1][2] = 5;
    state[3][2] = 7;
    Point p1(state);
    for (int i = 0; i < 10; i++) {
        for (int j = 0; j < 4; j++) {
            cout << p1.point_data[i][j] << " ";
        }
        cout << "\n" << endl;
    }
    queue<Point> searchlist;

    searchlist.push(p1);

    while (!searchlist.empty())
    {
        Point temp = searchlist.front();
        cout << "[" << p1.point_data[2][3] << "," << p1.point_data[1][2] << "]" << endl;
        searchlist.pop();
    }
    system("pause");
    return 0;
}