我正在将N维图像块编码为不同的图像格式。在运行时,我不知道图像的尺寸,而且我使用的库需要一个N维数组目标缓冲区作为参数来从原始图像中读取。
我该如何在C++中声明这样的数组呢?谢谢 :)
我正在将N维图像块编码为不同的图像格式。在运行时,我不知道图像的尺寸,而且我使用的库需要一个N维数组目标缓冲区作为参数来从原始图像中读取。
我该如何在C++中声明这样的数组呢?谢谢 :)
extern
数组声明其中一个维度的值是未知的。维数的数量始终是类型的一部分,并且该类型必须在编译时已知。3^n
,动态分配相应数量的int
(可能使用vector<int>
为方便),然后您将拥有与int[3][3]...[3]
相同布局的内存。 您可以通过void*
引用此内存。在这种情况下,您不能使用数组。数组仅适用于那些在编译时大小和维度已知的数据。尝试使用一个std::vector数组代替。
char*
或pixeltype***
,那么这不是一个 C++ 的问题。 - Agent_L