我构造了一个盒子对象,在构造时,我将每个指针一个接一个地保存到一个数组中,总共81个。
for (int y = 0; y < 9; y++) {
for (int x = 0; x < 9; x++) {
Box *currentBox;
fin >> b;
if (b != 0)
{
currentBox = new Box();
ptrArr[iteration++] = currentBox;
}
然后我使用相同的数组将这些分组框分组并构造为单个对象,其中组包括纵向,横向和截面。我通过以某些独特的顺序迭代数组来实现这一点,将新排序的框保存到不同的框指针类型数组中,然后将它们保存到3个不同的boxGroup指针类型数组中。
Box* Latitude[9];
Box* Longitude[9];
nextLine = 0;
int longIndex=0, longCounter=0, latIndex = 0;
for (int x = 0; x < 9; x++) {
longIndex = nextLine;
for (int y = 0; y < 9; y++)
{
Latitude[y] = ptrArr[latIndex];
Longitude[y] = ptrArr[longIndex];
longIndex = longIndex + 9;
latIndex++;
}
nextLine++;
latitudes[x] = new BoxGroup(Latitude);
longitudes[x] = new BoxGroup(Longitude);
}
现在我需要以某种方式输入所需框的索引号并检索它所在的经度/纬度/部分。最后,我需要检索每个boxgroup对象中的元素并将它们保存在一个向量,并为每个框对象执行此操作,因为每个框对象在经度,纬度和截面上将具有不同的组合。 BoxGroup对象是Box类型的指针数组。怎么可能实现这个目标,或者你会采用不同的方法吗?