Filter löschen
Filter löschen

How do I access a structure which is available inside a method of a class?

1 Ansicht (letzte 30 Tage)
if true
classdef test1
%UNTITLED Summary of this class goes here
% Detailed explanation goes here
properties
end
methods
function example(obj)
...
% The calculation Part
...
stru % The calculation part returns "struct" which is a structure
%with 5 fields and these 5 fields have some sub fields in them
end
end
The above shown code is my class(test1) which has a method named "example" which calculates a structure named "stru". Stru is a structure with 5 fields and those 5 fields in turn have 3 subfields. ----------------------------------------------------------------------------------------------
My Question: How can I access the structure "stru" in some other method of a different class but which is also stored in the same working directory. Please note, I am using both classes in my GUI.

Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 8 Aug. 2014
Store it as a property of the class:
classdef SomeClass < handle
%UNTITLED Summary of this class goes here
% Detailed explanation goes here
properties
aStruct
end
methods
function method1(obj)
obj.aStruct = struct('hello',1);
end
function method2(obj)
disp(obj.aStruct)
end
end
end
Using it:
x = SomeClass
method1(x)
method2(x)
  2 Kommentare
matlablearner
matlablearner am 8 Aug. 2014
Thanks for your quick response. In your code, If I already have two other properties defined and they are being used in the same method, How can I access this propoerty in specific? Excuse me If my question is very naive. I have Included my doubt in the code below.
if true
% classdef SomeClass < handle
%UNTITLED Summary of this class goes here
% Detailed explanation goes here
properties
aStruct
bInfo
cInfo
end
methods
function method1(obj)
obj.aStruct = struct('hello',1);
obj.bInfo = blabla;
end
function method2(obj)
disp(obj.aStruct)
end
end
So Now how do I access the aStruct in some other class and not in the same class. Thanks a lot.
Sean de Wolski
Sean de Wolski am 8 Aug. 2014
That other class' method would have to receive the object as an input
otherclassmethod(other_class_obj, some_class_obj)
some_class_obj.aStruct.b

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by