Why does function isscalar() return "1" for function handles?

2 ビュー (過去 30 日間)
James Usevitch
James Usevitch 2018 年 12 月 7 日
編集済み: Stephen23 2018 年 12 月 7 日
Why does the function isscalar return a logical 1 for function handles? Working example:
test_function = @(x) x^2;
isscalar(test_function)
The above code returns a logical 1 for me. I'm running MATLAB R2018a on Ubuntu 16.04.
This came up while writing code that programmatically finds all scalar properties of an object. Not a big deal since I can use this answer as a workaround--I'm just asking out of curiosity.

採用された回答

Stephen23
Stephen23 2018 年 12 月 7 日
編集済み: Stephen23 2018 年 12 月 7 日
Because the documentation states that "A function handle is always scalar (1-by-1)."
MATLAB is based on the principal that everything is an array... so when function handles were added to MATLAB I guess they also had to fit inside this paradigm.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by