Constructors and Destructors seem to behave in a special way. If you derive a class that has it’s own constructor/destructor, they seem to automagically become virtual with an implied parent call at the start of the derived constructor and end of the destructor code. Is this a correct assumption?
PROGRAM MAP END c1 CLASS,TYPE Construct PROCEDURE() Destruct PROCEDURE() END c2 CLASS(c1),TYPE Construct PROCEDURE() Destruct PROCEDURE() END c3 &c2 CODE c3 &= new c2 dispose(c3) c1.Construct PROCEDURE() CODE STOP('c1 Construct') c2.Construct PROCEDURE() CODE STOP('c2 Construct') c1.Destruct PROCEDURE() CODE STOP('c1 Destruct') c2.Destruct PROCEDURE() CODE STOP('c2 Destruct')
So in this case you see c1 construct, c2 construct, c2 destruct, c1 destruct