Constructor doesn`t work at all (Error using implicit default value of property in class)
이전 댓글 표시
I tried to initialize class properties but got error
"Error using implicit default value of property in class 'val1'. Value must greater than 0"
first I have made an example class
classdef myclass
properties (access = public)
val1 double {mustBeGreaterThan(val1,0)};
end
properties (access = private)
val2 double {mustBeGreaterThan(val2,0)};
end
methods
function obj = myclass()
%constructor
if nargin<1
obj.val1 = 0.3;
obj.val2 = 0.5;
end
end
end
end
after making class, implement the codes
myclass_instance = myclass()
and it says error
"Error using implicit default value of property 'var1' in class 'myclass'. Value muse be greater than 0
why I got an error message? Is the property constraints are called faster than the constructor?
Then the only solution is to remove constraints?
What a mess language matlab it is!
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Class Introspection and Metadata에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!