How can I combine two objects of different subclasses into the property of another class?
6 views (last 30 days)
Show older comments
Ignacio Estaún
on 24 May 2018
Commented: Ignacio Estaún
on 25 May 2018
Hello,
I explain the example so that it is better understood: I have a "board" class with a "player" attribute. This attribute is a list of different objects of the "human player" class. If I want to add to this list "player" objects of the class "player cpu" I get an error.
0 Comments
Accepted Answer
Benjamin Kraus
on 24 May 2018
Specifically, your player class needs to derive from matlab.mixin.Heterogeneous. Then, as long as all your other player classes derive from your main player base class, you should be all set.
More Answers (1)
Philip Borghesani
on 24 May 2018
Two ways to do this:
- Make player a cell array instead of an array of of human players. This is the simplest solution but may not be the best in the long run.
- Derive "human player" and "player cpu" from a common base class that is heterogeneous
0 Comments
See Also
Categories
Find more on Construct and Work with Object Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!