当用Matlab编程时,假如某个矩阵的大小提前不知道,而在循环过程中,该矩阵会不断增大,则会出现如下提示:

警告:变量A似乎会随脚本中迭代次数而改变,请预分配内存以获得更高的运算速度。

那为什么Matlab的矩阵变量要预定义其大小呢?

1、问题示例

比如有如下一段代码。

matlab怎么定义一个变量为矩阵(为什么Matlab的矩阵变量建议预定义其大小)(1)

matlab怎么定义一个变量为矩阵(为什么Matlab的矩阵变量建议预定义其大小)(2)

2、原因分析

matlab怎么定义一个变量为矩阵(为什么Matlab的矩阵变量建议预定义其大小)(3)

PS:当For循环的次数比较少,而计算机的连续内存又足够时,A矩阵的大小即使不提前定义,程序也是可以运行的。

matlab怎么定义一个变量为矩阵(为什么Matlab的矩阵变量建议预定义其大小)(4)

,