У вас есть много вариантов:
Использование std::vector
Это делает это очень просто:
std::vector<std::vector<Point>> Grid;
void something(std::vector<std::vector<Point>> &grid) { ...
Если вы знаете, что размер будет установлен во время компиляции всегда, используйте std::array
:
typedef std::array<std::array<Point, YDimSize>, XDimSize> Grid;
Grid grid;
void something(Grid &grid) { ...