arrays - 编译的 Matlab 中的零大小数组维度
问题描述
我有 Matlab 代码,它根据某些输入参数 N 生成可变大小的数组。维度 1 和 2 是固定的,并且数组在第三维度中的大小是 N,即 size(A) = [x, y, N ]。N 可以取从 1 向上的整数值。
因此,在 N=1 的情况下,我按如下方式对数组进行索引:
B = A(:, :, 1)
这里 A 简化为 2D 矩阵,但 Matlab 可以处理从 1 到更高维度的索引。
使用 Matlab Compiler SDK 编译此代码后,运行可执行文件会导致错误,因为运行时似乎无法处理从 1 到维度 3 的索引。打印 size(A) 给出 [x, y, 0] 并因此出现badsubscript错误.
我想我可以在 N=1 的情况下添加逻辑来处理对 A 的索引,但这似乎是一个障碍,因为 N=1 在任何其他情况下都不是特殊情况。但我希望有更好的方法来做到这一点?
解决方案
推荐阅读
- javascript - 如何在角度 4 中创建自定义 .hasError 条件
- python - Python函数在第二次迭代后不会为变量赋值
- ms-access - MS Access VBA:将多个对象添加到集合中
- amazon-web-services - 如何使用 Boto3 Python 更新 IAM 策略
- c - 插入二叉搜索树
- java - 以编程方式更改 Android 上的设备开发人员选项
- javascript - 没有通过 AJAX 获取数据
- python - 如果不是唯一参数,Python 2.6 生成器表达式必须用括号括起来
- c# - Linq to mongodb:子查询条件下的意外行为
- scala - Spark Scala - 如何初始化一个包含 1000 列的空数据框