i
должна быть равна нулю. class Base_Matrix
{
private:
int M, N;
int * matrix;
public:
Base_Matrix(int m, int n)
: M(m), N(n)
{
matrix = new int [M*N];
}
~ Base_Matrix()
{
delete [] matrix;
};
int get_item(int m, int n)
{
return matrix[m*N + n];
}
void set_item(int m, int n, int x)
{
matrix[m*N + n] = x;
}
void get_size(int * m, int * n)
{
*m = M;
*n = N;
}
};
class Matrix
{
private:
Base_Matrix * matrix;
public:
Matrix(int m, int n)
{
matrix = new Base_Matrix(m, n);
}
~ Matrix()
{
delete matrix;
}
// Методы в которых вы запрашиваете данные из консоли и заполняете ими матрицу.
// Для добавления или удаления придётся создавать временную матрицу большего
// размера, записывать туда текущую и нужный столбец, потом удалять текущую и
// присвоить указателю адрес созданной. С удалением столбца аналогично.
};