我试图str2func
根据特定的属性值(在本例中obj.type
)调用我的类的不同方法。
所以我有
classdef myClass
properties
type %# values are different file extensions (LSM, TIFF, OIF etc...)
end
methods(public)
function process(self)
%# here I would like to do something in the lines of
funHandle = str2func(['@()self.process_' self.type])
funHandle() %# E1
end
end
methods(private)
%# I have a bunch of methods named process_[type]
process_LSM(self)
process_TIF(self)
% etc...
end
end
但是,这不起作用。在E1行(上图)MATLAB 抱怨类self未定义并且 Java 可能没有运行?有没有办法让它工作,还是我必须在方法过程中使用开关结构来调用特定于类型的方法process_[type]?