gpt4 book ai didi

matlab - 使用 Matlab 中的方法设置对象属性

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

我正在 MATLAB 中创建一个类,虽然我对对象的经验很少,但我几乎可以肯定我应该能够使用类方法设置类属性。这在 MATLAB 中可行吗?

classdef foo
properties
changeMe
end

methods
function go()
(THIS OBJECT).changeMe = 1;
end
end
end

f = foo;
f.go;


t.changeMe;
ans = 1

最佳答案

是的,这是可能的。请注意,如果您创建一个值对象,则该方法必须返回该对象才能更改属性(因为值对象是按值传递的)。如果您创建句柄对象 ( classdef foo<handle ),则该对象通过引用传递。

classdef foo
properties
changeMe = 0;
end

methods
function self = go(self)
self.changeMe = 1;
end
end
end

如上所述,在值对象上调用设置方法会返回更改后的对象。如果要更改对象,则必须将输出复制回对象。

f = foo;
f.changeMe
ans =
0

f = f.go;

f.changeMe
ans =
1

关于matlab - 使用 Matlab 中的方法设置对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5320513/

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