Supongamos que tengo la siguiente clase que calcula la solución a la ecuación de segundo grado:MATLAB - propiedades dependientes y cálculo
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
Ahora supongamos que ejecute los siguientes comandos:
>>quadcalc = MyClass;
>>quadcalc.a = 1;
>>quadcalc.b = 4;
>>quadcalc.c = 4;
En este punto, quadcalc.x = [-2 -2]
. Supongamos que llamo al quadcalc.x
varias veces sin ajustar las demás propiedades, es decir, quadcalc.x = [-2 -2]
cada vez que solicito esta propiedad. ¿Está quadcalc.x
recalculado cada vez, o simplemente "recordará" [-2 -2]?
Supongamos que utilizo 'x' en otras propiedades dependientes; 'x' también se volvería a calcular para cada otra propiedad dependiente, ¿sí? –
@ strictlyrude27: Sí. – Jonas