新微赢技术网

标题: c++求助,望各位路过的大虾帮忙 [打印本页]

作者: 绿茶    时间: 2009-11-5 00:22
标题: c++求助,望各位路过的大虾帮忙
如下:
用class来实现可变的二维数组
类型name[m][n],即m,n可变
类型*p,**p必须用
里面必须有
1)构造函数
2)析构函数
3)拷贝构造
希望大虾们不吝赐教,给出原代码,在下不胜感激
作者: 红苹果    时间: 2009-11-5 00:22
各位帮忙啊
作者: 天山花芯    时间: 2009-11-5 00:22
没人帮忙??
作者: 哪里找    时间: 2009-11-5 00:22
class arry2
{
public:
arry2(int first,int second);
~arry2();
arry2(arry2);
int getfirst(){return fir;}
int getsecond(){return sec;}
int getvalue(int m,int n){return arry[m][n];} //获取m行n列处的值
private:
int** arry; //arry[]即是 int* 类型
int fir,sec; //保存数组的两个参数
};
arry2::arry2(int first,int second) //说明:每一次调用new后应该检查分配状况,以下省略
{ fir=first;sec=second;
arry=new int*[fir]; //先分配一个长度为first的整型指针数组
for(int i=0;i<fir;i++) //然后给每个整型指针分配长度为second的数组
arry[i]=new int[sec];
}
arry2::~arry2()
{
for(int i=0;i<fir;i++)
delete [] arry[i];
delete []arry;
}
arry2::arry2(arry2 tocopy)
{
fir=tocopy.getfirst();sec=tocopy.getsecond(); //建立一个与tocopy一样大小的二维数组
arry=new int*[fir];
for(int i=0;i<fir;i++)
arry[i]=new int[sec];
for(int m=0;m<fir;m++) //逐一复制tocopy的值
for(int n=0;n<sec;n++)
{ arry[m][n]=tocopy.getvalue(m,n);}
}
//最近写求行列式的程序时刚好想到这个东东,还盼大虾指教
作者: 随chu风liu    时间: 2009-11-5 00:22
,thanks




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2