二维数组调整大小
来源:互联网 发布:时时动态数据展现工具 编辑:程序博客网 时间:2024/04/26 20:05
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
template<class T>
void Make2DArray(T **&x, size_t rows, size_t cols)
{
x = new T* [rows];
for (size_t i = 0; i != rows; ++i)
{
x[i] = new T[cols];
}
}
template<class T>
void Delete2DArray(T **&x, size_t rows)
{
for (size_t i = 0; i != rows; ++i)
{
delete [] x[i];
}
delete [] x;
x = 0;
}
template<class T>
void ChangeSize2D(T **& arr, size_t SizeRow, size_t SizeCol, size_t ToSizeRow, size_t ToSizeCol)
{
if( SizeRow > ToSizeRow || SizeCol > ToSizeCol ) cout << "error : ToSize should great than size ";
T **temp;
Make2DArray(temp, ToSizeRow, ToSizeCol);
for (size_t i = 0; i != SizeRow; ++i)
{
for (size_t j = 0; j != SizeCol; ++j)
{
temp[i][j] = arr[i][j];
}
}
Delete2DArray(arr, SizeRow);
/* arr = new T[ToSize];
for ( i = 0; i != ToSize; ++i)
{
if(i < size)
arr[i] = temp[i];
else
arr[i] = 0;
cout << temp[i];
}
delete [] temp;*/
arr = temp;
return;
}
int main()
{
const size_t SizeRow = 3;
const size_t SizeCol = 4;
const size_t ToSizeRow = 5;
const size_t ToSizeCol = 6;
int ** a ;
Make2DArray(a, SizeRow, SizeCol);
for (size_t i = 0; i != SizeRow; ++i)
{
for (size_t j = 0; j != SizeCol; ++j)
{
a[i][j] = i;
}
}
for ( i = 0; i != SizeRow; ++i)
{
for (size_t j = 0; j != SizeCol; ++j)
{
cout << a[i][j] << endl;
}
}
ChangeSize2D(a, SizeRow, SizeCol, ToSizeRow, ToSizeCol);
for ( i = 0; i != ToSizeRow; ++i)
{
for (size_t j = 0; j != ToSizeCol; ++j)
{
cout << a[i][j] << endl;
}
}
Delete2DArray(a, ToSizeRow);
return 0;
}
- 二维数组调整大小
- 关于Delphi中二维数组的声明和大小调整
- 二维数组动态分配大小
- 一维数组调整大小
- Java动态调整数组大小
- 栈的实现,动态调整数组大小
- 可自定义大小的二维数组和三维数组
- JAVA功能代码《13》----在Java中调整数组大小
- c语言动态调整数组大小如何使用realloc
- 下压栈(能动态调整数组大小的实现)
- 《数据结构、算法与应用》7.(动态调整数组大小)
- 下压栈(LIFO) (能动态调整数组大小的实现)
- java算法之下压栈来动态调整数组大小
- 普林斯顿公开课 算法2-8:调整数组大小
- 下压栈(能够动态调整数组大小的实现)
- 用sizeof求二维数组的行列大小
- java 使用arraylist生成二维任意大小的数组
- C/C++ 任意大小的二维数组作为函数参数
- 二,三,四层交换机的区别-转
- Cisco Nexus 7000系列交换机
- 射频卡多线程读写原理及其实现
- 单点登录系统的设计与实现方案
- 关于 DAO 接口设计的思考
- 二维数组调整大小
- net发送邮件1
- fjnu 1901 Numbers That Count
- net发送邮件2
- JSP中的隐含对象
- 泛型写基础DAO
- Modbus通讯协议详解
- 基于.NET2.0的System.Net.Mail发送邮件Demo
- sql脚本的一些经验