Operator '+' is not supported for operands of type 'function_handle'.

5 Ansichten (letzte 30 Tage)
JICHAO ZHANG
JICHAO ZHANG am 21 Jun. 2023
Beantwortet: 埃博拉酱 am 26 Jun. 2023
I have two function handle,such as g=@(x)x+a,f=@(y)y+b
why not do '+'
h=g+f
for example
for t=1:10
h(0)=g;
h=g+t.*f
end

Antworten (2)

Matt J
Matt J am 21 Jun. 2023
Bearbeitet: Matt J am 21 Jun. 2023
It's a bad idea (i.e. very inefficient) to add two functions together, however, the proper way would be as follows:
g=@(x)x+1;
f=@(y)y+2;
h=@(z) g(z)+f(z);
h(10)
ans = 23
  3 Kommentare
Dyuman Joshi
Dyuman Joshi am 26 Jun. 2023
@JICHAO ZHANG please check Matt's response to your comment.

Melden Sie sich an, um zu kommentieren.


埃博拉酱
埃博拉酱 am 26 Jun. 2023
Only symbolic functions can be added directly. You may need to refer to Symbolic Math Toolbox.

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by