The return value of the extrinsic function is a variable array, How can I access it?

4 Ansichten (letzte 30 Tage)
J = zeros(0,1);
coder.varsize(J);
coder.extrinsic('fast_union_sorted');
temp = fast_union_sorted(activeSet, I);
J = temp;
the size of the array temp is not fixed size;
Matlab will report error when executing " J = temp", such as
expression 'temp' is not of the correct size: expected [0x1] found [5x1].
How can I solve it?
Thanks!

Akzeptierte Antwort

Denis Gurchenkov
Denis Gurchenkov am 14 Jul. 2016
After the call to fast_union_sorted(), read the size of the return value, and reallocate J to be of that size:
coder.varsize('J');
coder.extrinsic('fast_union_sorted');
temp = fast_union_sorted();
n = [0 0];
n = size(temp);
J = zeros(n);
J = temp;

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB Coder finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by