【发布时间】:2014-12-18 09:09:11
【问题描述】:
我有一个结构体,里面有非常大的数组。我使用 MATLAB coder 生成 C 代码。
在我生成的代码中,我希望调用一些 C 函数并通过引用传递其中一个数组。
例如:
coder.ceval('Foo',coder.ref(MyStruct.VeryLargeArray));
MATLAB 编码器不允许这样做,我得到错误:
coder.ref 只能应用于 V 或 V(E) 类型的表达式 ...
由于MyStruct.VeryLargeArray 非常大,顾名思义,我希望避免将其复制到临时变量的简单解决方案:
UnnecessaryTempVar = MyStruct.VeryLargeArray;
coder.ceval('Foo',coder.ref(UnnecessaryTempVar));
有什么解决方法的想法吗?
【问题讨论】:
标签: matlab matlab-coder