#include <armadillo>
int main()
{
arma::cube::fixed<28, 28, 100> a;
arma::cube::fixed<28, 28, 100> b;
}
此代码给出了以下错误
mnist.exe中0x000000013F6034A7处的未处理异常:0xC00000FD:堆栈溢出(参数:0x0000000000000001,0x0000000000133000)。
任何想法为什么?因为我一无所知。
答案 0 :(得分:0)
仅建议使用fixed size matrices或多维数据集,因为堆栈大小有限。在您的情况下,28 * 28 * 100 * 8 = 627200,或约612 Kb。 (最后8位是双精度浮点数占用的字节数)。由于内部矩阵和立方体保持,也存在一些开销。
不使用固定大小的多维数据集,最好使用标准多维数据集:
arma::cube a(28,28,100);