gpt4 book ai didi

oop - MATLAB - 相关属性和计算

转载 作者:太空宇宙 更新时间:2023-11-03 19:24:46 25 4
gpt4 key购买 nike

假设我有以下计算二次方程解的类:

classdef MyClass < handle
properties
a
b
c
end
properties (Dependent = true)
x
end

methods
function x = get.x(obj)
discriminant = sqrt(obj.b^2 - 4*obj.a*obj.c);
x(1) = (-obj.b + discriminant)/(2*obj.a);
x(2) = (-obj.b - discriminant)/(2*obj.a);
end
end
end

现在假设我运行以下命令:

>>quadcalc = MyClass;
>>quadcalc.a = 1;
>>quadcalc.b = 4;
>>quadcalc.c = 4;

此时,quadcalc.x = [-2 -2]。假设我多次调用 quadcalc.x 而没有调整其他属性,即 quadcalc.x = [-2 -2] 每次我请求这个属性。 quadcalc.x 每次都重新计算,还是只是“记住”[-2 -2]?

最佳答案

是的,x 每次都会重新计算。这就是拥有依赖属性的意义所在,因为它保证 x 中的结果始终是最新的。

如果您想让x 成为“惰性依赖属性”,您可能需要查看我对this question 的回答中的建议。 .

关于oop - MATLAB - 相关属性和计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8098935/

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