Matlab-不带参数但不带静态的函数
我正在努力实现以下目标:Matlab-不带参数但不带静态的函数,matlab,function,static,Matlab,Function,Static,我正在努力实现以下目标: classdef asset properties name values end methods function AS = asset(name, values) AS.name = name; AS.values = values; end function out = somefunction1
classdef asset
properties
name
values
end
methods
function AS = asset(name, values)
AS.name = name;
AS.values = values;
end
function out = somefunction1
ret = somefunction2(asset.values);
out = mean(ret);
return
end
function rets = somefunction2(vals)
n = length(vals);
rets = zeros(1,n-1);
for i=1:(n-1)
rets(i) = vals(i)/vals(i+1);
end
return
end
end
end
但是我得到了一个错误,有些函数1应该是静态的。但是如果它是静态的,那么它就不能再访问属性了。如何解决这个问题?在Matlab oop中,第一个函数参数是对象
function out = somefunction1(obj)
ret = somefunction2(obj.values);
out = mean(ret);
return
end
所有其他功能也一样。这是一个隐式参数,如果函数需要属性,则调用函数
x.somefunction()
,然后将它们作为输入参数。。。