notation

2 views (last 30 days)
Baba
Baba on 7 Nov 2011
what does () mean in the line below?
x=somefunction()

Accepted Answer

Wayne King
Wayne King on 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;

More Answers (2)

Wayne King
Wayne King on 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 Comment
Baba
Baba on 7 Nov 2011
but in the code that I have, there are no parameters inside the parenthese.

Sign in to comment.


Walter Roberson
Walter Roberson on 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.

Categories

Find more on Entering Commands in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!