Variable superclass

7 views (last 30 days)
Paul
Paul on 28 Oct 2011
Hi, I currently have created the following class design: Abstract Class A and Subclass B(1) < A. As expected with implementing an abstract class, I also have Subclass B(2)<A, B(3)<A...etc. I'm interested in creating a new subclass, say C, whose Superclass will be determined at runtime. For example, I may want C<B(1) or C<B(2) and therefore I'm interested in a varaible superclass B when coding my subclass C. Is this possible? Can anyone point me in the right direction for documentation? Thanks.
  1 Comment
Paul
Paul on 31 Oct 2011
I found a work around solution and thought I might post it. It's not quite as elegant as might be possible in C++ but it works. Simply create objects of Subclass B(1)...B(n) in Subclass C at runtime, and instatiate the appropriate object based on a string indicator (or object indicator such as 'enum').

Sign in to comment.

Answers (1)

per isakson
per isakson on 3 Nov 2011
One way that I have used is to write an m-file at run time.
classdef C < Middle
...
At run time I write the file, Middle.m, to a special folder (to avoid copies of Middle.m in different folders)
classdef Middle < Bx
end
before calling C. If used the construct must be describe in the comments.

Categories

Find more on Methods 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!