Safe Multiple Inheritance - HOW? (was: Re: Commit: WordPerfect importer cleanup)

From: Omer Zak (omerz@actcom.co.il)
Date: Fri Mar 07 2003 - 05:14:40 EST

  • Next message: Randy Kramer: "Re: A few more cast cleanups"

    On 6 Mar 2003, William Lachance wrote:

    > Remove an unnecessary marshaller class through the miracle of multiple
    > inheritance. Less code, less bugs. The classes I'm aggregrating are
    > completely orthogonal: please forward your complaints about the use of
    > MI to /dev/null/.

    Actually, one kind of multiple inheritance is (or should be) trouble-free,
    and is used in a software development framework, which generally frowns on
    multiple inheritance (Symbian OS, used in some cellular phones).

    This special kind has the restriction that out of all parent classes from
    which a given class multiply-inherits, only one parent class may declare
    variables and/or non-virtual functions. All other parent classes are
    allowed to declare only virtual functions.

    Thus, the extra parent classes are no more than the equivalent of Java's
    interfaces.

    If William Lachance's multiply-inheriting classes conform to this
    restriction, I see no problem with allowing this.
    If not, then it should not be too difficult to restructure the classes to
    conform to this restriction.
                                                 --- Omer
    My opinions, as expressed in this E-mail message, are mine alone.
    They do not represent the official policy of any organization with which
    I may be affiliated in any way.
    WARNING TO SPAMMERS: at http://www.zak.co.il/spamwarning.html



    This archive was generated by hypermail 2.1.4 : Fri Mar 07 2003 - 05:21:12 EST