Custom function App Designer [Matlab] [App Designer]

Hello !
I made a discovery in App Designer : it seems like "app" is optional when using custom functions :
methods (Access = private)
function add(app, a, b) % get both parameters BUT also app before !
disp(a + b);
end
function startupFcn(app)
app.add(app, 5, 6); % print 11
app.add(5, 6); % let's send 2 parameters (without app) / print also 11
end
end
Am I right ?
Is it advisable to send "app" first ?
Robin

 Akzeptierte Antwort

Steven Lord
Steven Lord am 14 Mär. 2019

1 Stimme

No, the app object is not optional. You must pass it into the method in order to invoke the method.
What you're seeing is one of the two ways to invoke a method, dot notation versus function notation. See the section "Dot Notation vs. Function Notation" on this documentation page for a description of the specific cases where those two approaches to invoking a method can differ. [You can also use this to dynamically call a method whose name is stored in a string or char variable, as described in the "Referencing Names with Expressions—Dynamic Reference" section on that same documentation page.]
When you use dot notation, the object before the dot is passed into the method as the first input.

1 Kommentar

Robin L.
Robin L. am 14 Mär. 2019
Bearbeitet: Robin L. am 14 Mär. 2019
Thank you so much Steven Lord ! ?
But which one is better ?
add(app, 5, 6);
app.add(5, 6);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Develop Apps Using App Designer finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2018a

Gefragt:

am 14 Mär. 2019

Bearbeitet:

am 14 Mär. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by