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에서 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!