Indexing of a size() object
65 views (last 30 days)
Show older comments
Hello,
If I have an array named arr, and run the following:
size(arr)(1)
then I get an error: "Indexing with parentheses '()' must appear as the last operation of a valid indexing expression."
However when adding an intermediate step:
s = size(arr);
s(1)
then everything runs as expected. So I don't have a practical problem to solve here, but was curious to know more about the reasons for that behavior, and when indexing should not be used.
1 Comment
Accepted Answer
Ameer Hamza
on 27 Nov 2020
Edited: Ameer Hamza
on 27 Nov 2020
Unlink some other languages, such a chain of indexing is not supported in MATLAB. You can find the discussion on this issue on the following links
I guess one of the main reasons it is still not supported is because of the ambiguity between the function call and indexing. Both use pranthesis (). If Mathworks make the decision to support this now, it can make the program slow and make it difficult for the JIT compiler to improve the speed.
0 Comments
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!