Proposal that all UC++ classes inherit from a single UC++ base class

Jonathan Poole

A postscript version of this whole document is available here

The latex source is available here

At present all UC++ classes have extra private members inserted into them

        ObjectStatus ObjectStatusFlag ;
        int _ucpp_Vpid ;
        friend OutputMessage & operator << (OutputMessage & Out, A *) ;
        friend InputMessage & operator >> (InputMessage & In, A * &) ;

The proposal is that all UC++ classes should inherit from a single (virtual) base class, perhaps UCPP. This UCPP base class might well be a template class, as the output and input operator might require to be template functions.

The advantages of moving to this method include:

What are the disadvantages? Does mulitple inheritance interfere in unexpected ways with other behaviour of classes?

Jonathan Poole
Wed Aug 2 17:54:12 BST 1995