1
[~,col] = find(ocpRefPt(2,:)>x1 & ocpRefPt(2,:)<x2 & ocpRefPt(1,:)>y1 & ocpRefPt(1,:)<y2);

About 是编译失败的那一行。上面的行是一个循环。 x1, x2, x3,x4是标量(自然数) ocpRefPt是一个 2x16 矩阵

Error: FIND requires variable sizing

这是什么意思。如何克服这个错误?

4

1 回答 1

2

因此,您似乎正在尝试编译emlmex以制作嵌入式代码。错误是说输出的大小find是未知的,显然编译器需要固定大小的输出。请参阅此新闻组帖子以获得一种解释。

这种编译方法似乎已经过时——改用MATLAB coder (codegen命令):

emlmex从 MATLAB 代码生成 C-MEX 文件。

emlmex [-options] fun1 [fun2 ...]

此功能已过时。用于通用加速和代码生成使用CODEGEN.

于 2013-10-14T23:28:01.680 回答