Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Looking through a Matlab Class

Asked by Martin on 27 May 2013

Hi!

I would like to execute some actions on every object of my class, say "Island".

Is there a command in Matlab allowing this? like

for island = Island

    % actions to do

end

I hope I've made myself understood :)

Thank you!

Martin

0 Comments

Martin

Tags

Products

No products are associated with this question.

2 Answers

Answer by Matt J on 27 May 2013
Accepted answer

if you have an array, obj, of Island objects, you would just do things like

 for i=1:length(obj)
   obj(i).prop=...
 end

0 Comments

Matt J
Answer by Martin on 27 May 2013
Edited by Matt J on 28 May 2013

Ok, thank you. It seems that there is no other solution :).

Another question, which may appear a bit silly :

If I create an array :

Skye = 1
Corse = 2
All_Islands = [Skye Corse]

Is there a way, only using All_Islands, to find the name of the variables (Skye & Corse) and not only there values (1 % 2)?

Sounds like a beginner's question and seems like the answer is no, but we never know... :)

Thanks!

4 Comments

Martin on 28 May 2013

My first remark was pointing the fact that I was obliged to create an array to look over all the elements of a class. I was simply wondering whether a command like "for island in Islands" existed.

For the second, I was wondering if, by just looking over the array AllIslands, it would have been possible to get the names of the variables (to display them with their associated values for example).

Daniel on 28 May 2013

@Martin, what you are asking to do seems a little bit strange (both the getting all objects and the getting the variable names). I think they are two separate questions and should be asked as such (you are likely to get better answers). In order to get the best answers, you will likely need to provide some broader insight into what you are trying to accomplish since my guess is you are too focused on the problem right now. Finally, please use the question, comment, and answer fields appropriately as it makes it easier to follow what is going on.

Martin on 28 May 2013

Ah yeah I just got the difference between comment and answer :) .

Never mind for the second question, as I said it's probably stupid. And the first one has been answered :)

Thank you Matt and Daniel!

Martin

Contact us