该回答内容部分引用GPT,GPT_Pro更好的解决问题
float(cp)[9][8] 是C++中动态创建多维数组的指针,其中cp是一个指向二维数组的指针,指向的二维数组大小为98,而这里也可以使用new float一个三维数组。
这是因为在C++中,我们可以通过指针来动态创建多维数组,其中每一层的大小可以是不同的,比如一个345的三维数组,可以使用如下的代码来动态创建:
int ***array = new int[3][4][5];
这里的array是一个三维数组的指针,其指向的三维数组大小为345,其实就是形成了一个三维的“盒子”,每一个盒子里都有一个int型的元素。
而在C++中也可以使用指针来动态创建多维数组,但是每一层的大小必须都是相同的,比如创建一个333的三维数组,可以使用如下代码来动态创建:
int ***array = new int[3][3][3];
这里的array也是一个三维数组的指针,其指向的三位数组大小也是333,同样也是形成了一个三维的“盒子”,每一个盒子里也都有一个int型的元素。
所以在C++中使用float(cp)[9][8]来动态创建多维数组,就是创建了一个298的三位数组,每一个“盒子”里都有一个float型的元素。而可以直接使用new float一个三位数组,就是因为这里所有三位里面每一层都有相同大小98。
如果回答有帮助,望采纳。