gpt4 book ai didi

matlab - 为什么在函数句柄中未显示预定义变量及其值?

转载 作者:行者123 更新时间:2023-12-04 12:20:14 24 4
gpt4 key购买 nike

在 MATLAB R2020b 中,我有以下代码:

f=@(x) x.^2;
y=2;
g=@(x) f(x).*y
输出是
g = function_handle with value: @(x)f(x).*y
但是 y = 2 ,所以我希望输出为 @(x)f.*2 .这是它应该如何工作还是错误?我可以将其显示为 f.*2而不是 f.*y ?

最佳答案

创建函数句柄时 g = @(x) f(x).*y , 变量的当前值 fy被“卡住”成 g的定义,如 documentation 中所述.
检查 f 的实际值和 y那个g使用方法可以拨打 functions 如下:

>> info = functions(g); disp(info)
function: '@(x)f(x).*y'
type: 'anonymous'
file: ''
workspace: {[1×1 struct]}
within_file_path: '__base_function'
具体见 workspace field :
>> disp(info.workspace{1})
f: @(x)x.^2
y: 2

关于matlab - 为什么在函数句柄中未显示预定义变量及其值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68115350/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com