In MATLAB's new object model (classdef, etc): If I have an array of the object, and I call an ordinary method, is the methods called for each object, or for the entire array, i.e. is a single object passed into the method, or the entire array? I know that in the old model, it got dispatched as the entire array.
Add a comment
|
2 Answers
It depends on if your method is vectorized. For a trivial example:
Not vectorized
function result = mySimpleMultiply(a,b)
result = a*b;
Vectorized
function result = myVectorizedMultiply(a,b)
result = a.*b;
2 Comments
Marc
I sure you were trying to help, but how does this answer the question at all?
Scottie T
Maybe I should have added that MATLAB treats all variables like arrays, so if you have a single element, say x = 2, x is a 1-by-1 double array. You then have to write your functions, OO or not, accordingly.