How many instance of the class is initiated?
조회 수: 6 (최근 30일)
이전 댓글 표시
Hello
I am just writing an object oriented code in Matlab. I need every object of my classes to know how many instances of that particular class has been made. I have tried persistent data variables or static methods. But no use! I appreciate any help.
Thank You
Hadi
댓글 수: 5
Sean de Wolski
2013년 5월 30일
Then why not have these ovbjects be children of a parent object like in handle graphics?
답변 (2개)
Sean de Wolski
2013년 5월 30일
Here is how I would attack this, (and let me reiterate, I don't know why you need this, there is probably a better way).
I would have singleton class:
That stores members of the other class. Let's call the singleton class, S.
Now you create one of your objects that needs to know about others, let's call it K. K first finds if an object of class S exists, if it does not, then it creates one. If it does, it calls a static method of this S object that bumps up the count. It also, adds a listener to S listening for it's own being deleted event. Now if this object of class K is deleted, the S object can remain up to date.
Alternatively, you could use findobj as is described here to look for some dummy property that all K objects have:
This is probably the easier way to do this.
댓글 수: 2
참고 항목
카테고리
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!