首页 > 代码库 > C++中使用模板,new创建2维动态数组
C++中使用模板,new创建2维动态数组
1 // 使用模板和new创建2维动态数组 2 3 #include<iostream> 4 #include<exception> 5 #include<cstdlib> 6 #include<iomanip> 7 using namespace std; 8 9 template<class Type>10 bool Make2DArray(Type **&x,int rows,int cols)11 {12 int i;13 try14 {15 // 创建行指针16 x=new Type *[rows];17 // 为每一行分配空间18 for(i=0;i<rows;i++)19 {20 x[i]=new Type [cols];21 }22 return true;23 }24 catch(bad_alloc)25 {26 return false;27 }28 29 }30 31 int main()32 {33 int **x,rows,cols,i,j;34 bool flag;35 cout<<"输入创建动态数组的行数rows= ";36 cin>>rows;37 cout<<"输入创建动态数组的列数cols= ";38 cin>>cols;39 flag=Make2DArray(x,rows,cols);40 if(flag==true)41 {42 for(i=0;i<rows;i++)43 {44 for(j=0;j<cols;j++)45 {46 x[i][j]=j+i*cols;47 }48 }49 }50 cout<<"输出创建的数组:\n";51 for(i=0;i<rows;i++)52 {53 for(j=0;j<cols;j++)54 {55 cout<<setw(3)<<x[i][j];56 }57 cout<<endl;58 }59 return 0;60 }
调试运行结果:
C++中使用模板,new创建2维动态数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。