前面已經介紹過如何動態宣告一個二維陣列 這邊來分享三維陣列的宣告,以及使用Function來傳遞

宣告一個三維陣列的概念跟二維陣列很類似

int ***create_3D_Array(int a, int b, int c)
{
	int ***A = new int**[a];
	for (int i = 0 ; i < a ; i++)
	{
		A[i] = new int*[b];
		for (int j = 0 ; j < b ; j++)
		{
			A[i][j] = new int[c];
		}
	}
	for (int i = 0 ; i < a ; i++)
		for (int j = 0 ; j < b ; j++)
			for (int k = 0 ; k < c ; k++)
				A[i][j][k] = 0;
	return A;
}

宣告完這個function之後 像下面這樣呼叫之後就可以動態產生一個三維陣列 是不是很方便呢XD

#include <iostream>
int main()
{
     int a,b,c;
     std::cin << a << b << c;
     int ***arr = create_3D_Array(a,b,c);
     
     return 0;
}

而刪除在這邊也用function來當例子

void delete_3D_Array(int ***arr, int a, int b, int c)
{
	for (int i = 0 ; i < a ; i++)
	{
		for (int j = 0 ; j < b ; j++)
		{
			delete [] arr[i][j];
		}
		delete[] arr[i];
	}
	delete [] arr;
	std::cout << "Delete arr successfully" << std::endl;
}

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 wrijLove 的頭像
    wrijLove

    宅宅情侶的成長日記

    wrijLove 發表在 痞客邦 留言(0) 人氣()