C++ Matrix Class

In C, if I wanted to create a matrix struct, I would use:

struct matrix {
  int col, row;
  double data[1]; // I want the matrix entries stored
                  // right after this struct
}

Then I can allocate it with

matrix* allocate_matrix(int row, int col) {
  matrix* m = malloc(sizeof(matrix) + sizeof(double) * (row * col - 1));
  m->row = row; m->col = col;
  return m;
}

Now do I do the equiv in C++?

EDIT:

I want to know the cannonical way to implement a matrix class in C++.

Leave a Comment