Я пытаюсь получить доступ к свойству класса из функции метода. Когда я изменяю свойство из конструктора, вызывается сеттер и свойство изменяется. Но когда я изменяю свойство из другого метода, свойство возвращается к предыдущему значению, когда функция завершается, даже если сеттер вызывается снова.Matlab установить свойство из метода класса
Что не так с моим кодом, пожалуйста, помогите мне! Благодаря
код находится ниже:
classdef random
properties
x
end
methods
function obj=random(obj)
obj.x = 2
obj.foo(1)
obj %output x:2, but it should be 1!
end
function foo(obj,A)
obj.x = A;
obj %output x:1
end
function obj = set.x(obj,newVal)
obj.x = newVal;
end
end
end
Не могли бы вы разместить код, в котором вы используете класс, чтобы мы могли воспроизвести проблему? – RPM
Я просто вызываю конструктор. Тогда, если я покажу значение «a», это неверно. >> a = случайный; >> a a = случайный со свойствами: x: 2 >> a.foo (1) – therman