我想在C ++中生成k
个不同的随机矩阵(使用Armadillo库),其中n最初没有修复,并且是我函数中的输入。通过在for
循环中使用以下代码,Armadillo很容易生成随机矩阵:
mat A = randu<mat>(n,n);
但是由于我在接下来的步骤中需要它们,我必须为它们分配动态名称或索引,例如A1,A2,...... 除了使用指针之外,我想知道哪种方法最适合这种情况?
答案 0 :(得分:3)
使用犰狳立方体可能更方便(也更有效,但尚未经过测试):
cube A = randu<cube>(n,n,k);
此立方体中的单个矩阵将作为A.slice(i)
访问,其中0≤i≤k-1。就像矩阵一样,可以在运行时调整大小,因此您可以动态更改n和k。您甚至可以使用A.resize(n',n',k')