//allocate memory block int *test = new int[5]; //free memory delete [] test;
test = NULL;
要動態配置多維陣列,就必須先由第一維開始配置存放下一維指標陣列,
然後再各自往下配置,以此類推...
刪除的方法類似,反向操作即可。
宣告一個 int test[3][4][5] 的陣列。
int ***test;
test = new int**[3];
//allocate memory block
for(int i=0; i<3; i++)
{
test[i] = new int*[4];
for(int j=0; j<4; j++)
{
test[i][j] = new int[5];
}
}
//free memory
for(int i=0; i<3; i++)
{
for(int j=0; j<4; j++)
{
delete [] test[i][j];
test[i][j] = NULL;
}
delete [] test[i];
test[i] = NULL;
}
delete [] test;
test = NULL;