From -2585857018276702193
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: f78e5,db4807a3f0a1e742
X-Google-Attributes: gidf78e5,public
X-Google-ArrivalTime: 1994-07-25 09:09:01 PST
Newsgroups: comp.std.c++
Path: nntp.gmd.de!Germany.EU.net!EU.net!howland.reston.ans.net!agate!msuinfo!harbinger.cc.monash.edu.au!news.cs.su.oz.au!metro!news
From: maxtal@physics.su.OZ.AU (John Max Skaller)
Subject: Re: Multiple inheritance and delete
Message-ID: <CtI5JI.9JE@ucc.su.OZ.AU>
Sender: news@ucc.su.OZ.AU
Nntp-Posting-Host: physics.su.oz.au
Organization: School of Physics, University of Sydney, Australia
References: <Ct8xyr.Ivq@borland.com> <1994Jul21.021936.314@corona.com>
Date: Mon, 25 Jul 1994 15:26:05 GMT
Lines: 47

In article <1994Jul21.021936.314@corona.com> pkron@corona.com writes:
>From: pete@genghis.interbase.borland.com (Pete Becker)
>>  In article <1994Jul20.044817.698@corona.com>,
>>  Peter Kron <pkron@corona.com> wrote:
>>>Clearly this is not desirable behavior, but is a side effect of trying
>>>to minimize storage for vtables and pointers to them. The concept of
>>>polymorphism should imply that *objects* determine how they respond to
>>>member functions, not callers.
>>  
>>  Clearly, the design decision for this pair of
>>  classes was that they are not polymorphic. That
>>  is not a language flaw, but a deliberate decision on the
>>  part of the designer of these classes. If you want the
>>  call to memberFunction() to be virtual, design your
>>  classes appropriately.
>
>Polymorphism is central to using C++ as an OOPL rather than just as
>a better of C. If polymorphism is not desired, it would be much more
>appropriate to use a different member name rather than overriding
>memberFunction. As I suggested, a keyword could be defined to provide
>non-polymorphic overrides, but that would be the exception rather than
>the rule.

	Yes it could but the default is the other way around.
Big deal. Its just a default, it has a historical basis.
C++ has a history, you know. Read Stroustrup's Design & Evolution.

>>  Please don't impose your design criteria on the rest of
>>  the world.
>
>Hmmm. It would seem the language is imposing the criteria, not me.
>I'm suggesting changes that I believe would reduce a lot of
>difficulty, based on some recent threads.

	It would also break REAMS of C++ code, for no good
reason other than to change a default to your liking.
Even if your liking is shared by many, that is not enough
to zap almost all C++ code in existence.

	As it happens, I think the default is correct.
(See discussion here some time back on "private virtual" methods)

--
        JOHN (MAX) SKALLER,         INTERNET:maxtal@suphys.physics.su.oz.au
	Maxtal Pty Ltd,		    
        81A Glebe Point Rd, GLEBE   Mem: SA IT/9/22,SC22/WG21 
        NSW 2037, AUSTRALIA	    Phone: 61-2-566-2189


