calling dependent properties from one class to another
조회 수: 4 (최근 30일)
이전 댓글 표시
Hi guys,
I want to call dependent properties from one class to another in matlab OOP. Could anyone suggest me how to do that.
I just want to call all my dependent properties. Since i calculated them using get function iam unable to understand how to call them. Could anyone give me some idea.
Thankyou
댓글 수: 1
Steven Lord
2020년 9월 10일
Are you trying to access the dependent properties through the class name or through a class instance?
The people class defines properties height and weight and a dependent property bodyMassIndex calculated from height and weight.
It doesn't make sense to ask for the bodyMassIndex for the people class.
It makes sense to ask for the bodyMassIndex of a specific instance of the people class.
If that's not the difficulty you're experiencing trying to access dependent properties, please show a small example that simulates the real problem you're trying to solve/model and explain the difficulty using that small example.
답변 (2개)
Steven Lord
2020년 9월 11일
classdef fitFunction
methods(Static)
function f=fit(objDS)
P=[0.456,0.2030]
objCore.Matcore=objDS.Matcore;
objCore.Wm=objDS.Wm;
% my core parameters have to be updated
objCore.depth=P(1);
objCore.length=P(2);
% i need to call my dependent properties
c1=lte(objCore.depth,objDS.dxma)
end
end
end
You created an object objCore in the base workspace. This function does not operate on that object. The assignments to objCore make a struct array in this function's workspace. So if you were to ask for objCore.area in this function, that struct doesn't have a field by that name.
There's a scientist named Steven Lord at the SETI Institute. Even though we share a name, I am not him and he is not me. Similarly just because the object in the base workspace and this identifier in the function share a name, they are not the same thing.
If you want this function to operate on an objCore object, it needs to accept that object as an input or to create one. [Technically there is a way for it to "reach into" its caller's workspace or the base workspace, but I strongly discourage doing that sort of "action at a distance".]
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Genetic Algorithm에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!