gpt4 book ai didi

matlab - 为什么 ishandle 为双输入返回 1?

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

为什么ishandle为双输入返回 1?例如:

>> a = zeros(1, 2);
>> a(1) = line([1 2], [1 2]);

a =
175.0010 0

>> ishandle(a)

ans =
1 1

有没有办法检查句柄是否有效,对于非句柄对象返回 0?

最佳答案

ishandle接受常见的数值,例如 0(=桌面句柄)和 1(= 默认情况下第一个打开的图形),它们通常也是有效的句柄。但是,如果你尝试设置一个不存在的属性,你仍然会得到一个错误 .

要回答您的问题,请将您的代码放在异常处理 block 中:

try
set(a,propName,propValue);
catch
% do something useful...
end

或者,如果您知道要查找的对象类型,请替换 ishandle(a)与(例如):
ishandle(a) && strcmp(get(a,'type'),'line')

关于matlab - 为什么 ishandle 为双输入返回 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17461622/

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