Constructor for a class, that accepts name-value pairs for setting properties
조회 수: 29 (최근 30일)
이전 댓글 표시
Hello! Could anyone advise on how to write a class constructor, that accepts name-value pairs for setting properties? For the untouched properties it must use predefined values. Using like this:
X = classX('Prop1',val1,'Prop3',val3)
Thanks
댓글 수: 0
채택된 답변
Matt J
2021년 6월 17일
편집: Matt J
2021년 6월 17일
With a recent Matlab version, you can do,
classdef classX
properties
Prop1, Prop3;
end
methods
function obj=classX(namedArgs)
arguments
namedArgs.Prop1=default1;
namedArgs.Prop3=default3;
end
obj.Prop1=namedArgs.Prop1;
obj.Prop3=namedArgs.Prop3;
end
end
end
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Construct and Work with Object Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!