我正在尝试使用单个函数返回类的多个属性:
classdef myClass
properties
a
b
c
end
methods
% ...
function P = returnABC(obj)
P = [obj.a obj.b obj.c];
end
end
我知道这不正确,但它代表了我想要实现的目标。我可以请你帮我解决一下吗?
答案 0 :(得分:1)
您可以像使用普通功能一样进行操作:
classdef myClass
properties
a
b
c
end
methods
% ...
function [a, b, c] = returnABC(obj)
a = obj.a;
b = obj.b;
c = obj.c;
end
end
答案 1 :(得分:0)
根据每个属性的类型,它们可能无法连接。 更好的方法是使用单元格作为输出。
function [c]=getall(obj)
p=properties(obj);
for i=1:length(p),
c{i}=get(obj,p{i});
end
end
请注意使用属性方法,使其具有通用性:如果更改/重命名属性,则无需更新此方法!