【Cherno的C++视频】Multidemensional arrays in C++

#include <iostream>
 
// 2D arrays.

int main(void)
{
	// creating...
	int* array = new int[5];	//array[0] = 0;
	for (int i = 0; i < 5; i++)
	{
		array[i] = 1;
	}

	int** array2D = new int*[5];//array2D[0] = nullptr; //array2D[0][0] = 0;
	for (int i = 0; i < 5; i++)
	{
		array2D[i] = new int[5];
	}
	for (int x = 0; x < 5; x++)
	{
		for (int y = 0; y < 5; y++)
		{
			array2D[y][x] = 2;
		}
	}

	int*** array3D = new int** [5];//array3D[0][0] = nullptr; //array3D[0][0][0] = 0;
	for (int i = 0; i < 5; i++)
	{
		array3D[i] = new int* [5];
		for (int j = 0; j < 5; j++)
		{
			int** ptr = array3D[i];
			ptr[j] = new int[5];
		}
	}
	for (int x = 0; x < 5; x++)
	{
		for (int y = 0; y < 5; y++)
		{
			for (int z = 0; z < 5; z++)
			{
				array3D[z][y][x] = 3;
			}
		}
	}

	// deleting...
	delete[] array;

	for (int i = 0; i < 5; i++)
	{
		delete[] array2D[i];
	}
	delete[] array2D;

	for (int i = 0; i < 5; i++)
	{
		for (int j = 0; j < 5; j++)
		{
			delete[] array3D[i][j];
		}
	}
	delete[] array3D;

	 using 1D array as a 2D array, a lot faster than 2D arrays.
	//int* fastArray = new int[5*5];
	//for (int x = 0; x < 5 * 5; x++)
	//{
	//	for (int y = 0; y < 5; y++)
	//	{
	//		fastArray[y + x*5] = 2;
	//	}
	//}

	std::cin.get();
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值