Call class A method from class B using function handle?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
SoderlingPotro
il 11 Dic 2022
Modificato: SoderlingPotro
il 12 Dic 2022
Please see below example:
classdef MainClass
properties
Prop1
end
methods
function obj = MainClass()
obj.Prop1 = ClassB;
obj.Prop1.SetMethod(@MyMethod);
end
function MyMethod(obj)
disp('MainClass MyMethod called')
end
end
end
classdef ClassB < handle
properties
UpdateMethod
end
methods
function SetMethod(obj,newMethod)
obj.UpdateMethod = newMethod;
end
function CallUpdateMethod(obj)
obj.UpdateMethod();
end
end
end
>> x = MainClass;
>> x.Prop1.CallUpdateMethod;
Unrecognized function or variable 'MyMethod'.
Error in ClassB/CallUpdateMethod (line 10)
obj.UpdateMethod();
I'd like to call MainClass MyMethod from ClassB however am misunderstanding how this should be done. Any help would be appreciated. Thanks
0 Commenti
Risposta accettata
Matt J
il 11 Dic 2022
function obj = MainClass()
obj.Prop1 = ClassB;
obj.Prop1.SetMethod(@()obj.MyMethod);
end
3 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Introduction to Installation and Licensing in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!