function chaining when one function has multiple outputs
显示 更早的评论
Similar question has been asked before, but I would ask the question in a more specific manner. If the function in the input end has more than one output, there will be the error 'Not enough input arguments'. Is there a neat way to make chained function out of that situation?
f(g) % only the first output of g is kept as input for f
function [x, y] = g()
x = 1;
y = 2;
end
function out = f(x, y)
out = x+y;
end
Storing the outputs of the first function in two variables could be a solution, but I like to see how chaining could be done in this kind of scenario for the sake of learning.
[x, y] = g();
f(x, y)
2 个评论
"Is there a neat way to make chained function out of that situation? "
No. The MATLAB apporoach is to call the two functions on two lines: this works because MATLAB's function outputs are demand driven. A discussion of why this behavior is required:
Simon
2024-8-20
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!