notation

2 Ansichten (letzte 30 Tage)
Baba
Baba am 7 Nov. 2011
what does () mean in the line below?
x=somefunction()

Akzeptierte Antwort

Wayne King
Wayne King am 7 Nov. 2011
Then somefunction.m does not take input arguments for example:
function x = somefunction
x = 2;
end
if you call
x = somefunction()
you get x = 2
you can also just enter
x = somefunction;

Weitere Antworten (2)

Wayne King
Wayne King am 7 Nov. 2011
The way you've written it, it implies that you are calling a function called somefunction that returns an output x. Inside the parentheses is where you supply any input arguments, name-value pairs, etc.
  1 Kommentar
Baba
Baba am 7 Nov. 2011
but in the code that I have, there are no parameters inside the parenthese.

Melden Sie sich an, um zu kommentieren.


Walter Roberson
Walter Roberson am 7 Nov. 2011
Then it is a function call with no parameters supplied.
Ordinary MATLAB functions that do not need a parameter, can be called either with the () notation or just by giving the function name. For example,
x = pi + rand;
is equivalent to
x = pi() + rand();
as "pi" and "rand" are both functions in MATLAB.
However, if somefunction were a function handle, then
x = somefunction;
would not call the function: instead it would copy the function handle. But
x = somefunction();
would invoke the function whether it was a regular function or a function handle.

Kategorien

Mehr zu Entering Commands finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by