У меня есть и он по умолчанию, но в нем делается ввод матрицы, а так нельзя. Как закинуть ввод в другой конструктор с парамером(и)?
Код: Выделить всё
class matrix
{
private:
int m,n;
int **matrica;
public:
matrix();
~matrix();
int get(int ,int);
void print();
void setSize();
};
void matrix::setSize()
{
int first;
int second;
cout<<"Enter first size: ";
cin>>first;
cout<<"Enter second size: ";
cin>>second;
n=first;
m=second;
system("cls");
}
matrix::matrix()
{
setSize();
matrica=new int*[n];
for (int i = 0; i < n; i++)
matrica[i] = new int[m];
for ( int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
matrica[i][j] = rand() % 10;
}
void matrix: :p rint()
{
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
cout<<matrica[i][j]<<' ';
cout<<"\n";
}
}
matrix::~matrix()
{
for (int i = 0; i < n; i++)
free(matrica[i]);
free(matrica);
}
int matrix::get(int i,int j)
{
if(i>=n||j>=m)
return 0;
cout<<matrica[i][j]<<'\n';
}
int main ()
{
system("cls");
matrix object;
object.print();
int i, j;
cout<<"\n get (i.j):"<<endl;
cout<<"Enter i: ";
cin>>i;
cout<<"Enter j: ";
cin>>j;
if(object.get(i,j)==0)
cout<<"i or j more or equal than n or m!\n";
system("PAUSE");
return 0;
}