#include<iostream>
using namespace std;
class vector_int
{
public:
vector_int();
vector_int(int s);
vector_int(int s,int x);
void print();
int &at(int x);
private:
int size;
int *p;
};
vector_int::vector_int(int s):size(s)
{
p=new int[s];
}
vector_int::vector_int(int s,int x):size(s)
{
p=new int[s];
for(int i=0;i<s;i++)
p[i]=x;
}
void vector_int::print()
{
for(int i=0;i<size;i++)
cout<<p[i]<<" ";
cout<<endl;
}
int &vector_int::at(int x)
{
return p[x];
}
#include<iostream>
#include"vector_int.hpp"
using namespace std;
int main()
{
int s;
cout<<"请输入构造对象的空间大小:";
cin>>s;
vector_int x1(s);
x1.print();
vector_int x2(s,6);
x2.print();
vector_int y(x2);
y.print();
y.at(0)=999;
y.print();
return 0;
}
![]()
#include<iostream>
using namespace std;
class matrix
{
public:
matrix(int n);
matrix(int n,int m);
matrix(const matrix&x);
//~matrix();
void set(const double *pvalue);
void set(int i,int j,int value);
//double &at(int i,int j);
double at(int i,int j) const;
int get_lines() const;
int get_cols() const;
void print() const;
private:
int lines;
int cols;
double *p;
};
matrix::matrix(const matrix&x)
{
lines=x.lines;
cols=x.lines;
p=x.p;
}
/*matrix::~matrix()
{
delete[] p;
}*/
matrix::matrix(int n)
{
lines=n;
cols=n;
p=new double[lines*cols];
for(int i=0;i<lines*cols;i++)
{
p[i]=0;
}
}
matrix::matrix(int n,int m)
{
lines=n;
cols=m;
p=new double[lines*cols];
for(int i=0;i<lines*cols;i++)
{
p[i]=0;
}
}
/*int matrix::get_cols() const
{
return cols;
}
int matrix::get_lines() const
{
return lines;
}*/
void matrix::set(const double *pvalue)
{
int i;
for(i=0;i<=lines*cols;i++)
p[i]=pvalue[i];
}
void matrix::print() const
{
int i,j;
for(i=0;i<lines;i++)
{
for(j=0;j<cols;j++)
{
cout<<p[i*cols+j];
if(j!=cols-1)
cout<<",";
}
cout<<endl;
}
}
double matrix::at(int i,int j) const
{
return p[i*cols+j];
}
void matrix::set(int i,int j,int value)
{
p[i*cols+j]=value;
}
#include<iostream>
#include"matrix.hpp"
int main()
{
using namespace std;
double x[]={1,2,3,4,5,6};
matrix m1(3,2);
m1.set(x);
m1.print();
cout<<"the frist line is:"<<endl;
cout<<m1.at(0,0)<<" "<<m1.at(0,1)<<endl;
cout<<endl;
matrix m2(2,3);
m2.set(x);
m2.print();
cout<<"the first line is:"<<endl;
cout<<m2.at(0,0)<<" "<<m2.at(0,1)<<" "<<m2.at(0,2)<<endl;
cout<<endl;
matrix m3(m2);
m3.set(0,0,999);
m3.print();
}
![]()