Anonymous function arguments and parameters extrction

If I have the anonymous function:
pu = @(x, y) [x,y];
is it npossible to extract the value of the argument x after the function has acted on it?
(Apologies if this does not make sense)

回答(2 个)

As written, as long as you know how long either one of the inputs was, yes.
P = @(x, y) [x, y];
x1 = 1:5;
y1 = 6:10;
z = P(x1, y1)
z = 1×10
1 2 3 4 5 6 7 8 9 10
x2 = z(1:5); % I know how long x was, extract that many elements from z
isequal(x2, x1)
ans = logical
1
x3 = z;
x3(end-4:end) = []; % I know how long y was, remove that many elements from z
isequal(x3, x1)
ans = logical
1
pu = @(x, y) [x,y];
a = pu(1, 2:3)
a = 1×3
1 2 3
b = pu(1:2, 3)
b = 1×3
1 2 3
isequal(a, b)
ans = logical
1
This means: No, you cannot decide, what the inputs have been based on the output.

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

提问:

Ken
2022-4-1

回答:

Jan
2022-4-1

Community Treasure Hunt

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

Start Hunting!

Translated by