在名为param1, param2. 他们是独立的,只是受到约束。param2必须等于或大于param1并且如果param1确实存在,则必须始终存在。有问题的代码类似于:
function set.param1(obj, input)
disp('setting param1')
obj.param1 = input;
if (isempty(obj.param2) || obj.param2 < obj.param1) % Warning on param2
obj.param2 = obj.param1; % Warning on param2
end
end
Run Code Online (Sandbox Code Playgroud)
的类似代码set.param2。代码工作正常,我看不到任何更好的方法。问题 - 它产生警告“设置方法......”,如标题中所述。由于缺乏更好的解决方案,我压制了它们。有没有更好的方法来实现这个功能并且没有警告?显然不是像隐藏功能这样的hacky“解决方案” SetParam2:
function SetParam2(obj, input)
obj.param2 = input;
end
Run Code Online (Sandbox Code Playgroud)
这足以让编辑器感到困惑,它不会抱怨。