How to solve this issue?Help me out?

classdef CEntity
properties
RandNumb
end
methods
function obj = CEntity
InitArray12()
end
end
end
function InitArray12()
obj.RandNumb=randi(100)
end
How to send value which is calculated in the "InitArray12" function to "RandNumb" which is there in the properties

댓글 수: 3

classdef CEntity
properties
RandNumb
end
methods
function obj = CEntity
obj.RandNumb= InitArray12()
end
end
end
function v=InitArray12()
v=randi(100)
end
Nath
Nath 2013년 3월 8일
편집: Nath 2013년 3월 8일
The function InitArray12 is outside the classdef so it doesnt know the instance. Change it to return your values, and assign them in the constructor
Are you sure that you want InitArray outside of your class definition? If so, Nath answered above; otherwise, you'll want to do something like:
classdef CEntity
properties
RandNumb
end
methods
function obj = CEntity()
obj = obj.InitArray12() ;
end
function obj = InitArray12(obj)
obj.RandNumb = randi(100) ;
end
end
end

댓글을 달려면 로그인하십시오.

 채택된 답변

per isakson
per isakson 2013년 3월 8일

0 개 추천

Or this way
>> ce = CEntity()
ce =
CEntity
Properties:
RandNumb: 92
Methods
>>
where
classdef CEntity < handle
properties
RandNumb
end
methods
function obj = CEntity
InitArray12();
end
function InitArray12( obj )
obj.RandNumb = randi( 100 );
end
end
end
Read the entry "Value or Handle Class — Which to Use" in the on-line help

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Argument Definitions에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by