TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy


Options: Use Classic View

Use Monospaced Font
Show Text Part by Default
Condense Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Sender: "Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
X-To: Pascal Obry <[log in to unmask]>
Date: Wed, 7 Feb 2001 02:39:17 +0300
Reply-To: "Alexandre E. Kopilovitch" <[log in to unmask]>
From: "Alexandre E. Kopilovitch" <[log in to unmask]>
Content-Type: text/plain; charset=us-ascii
In-Reply-To: <[log in to unmask]>; from Pascal Obry at Tue, 6 Feb 2001 23:43:35 +0100
Organization: h w c employees, b f
MIME-Version: 1.0
Parts/Attachments: text/plain (28 lines)
Pascal Obry <[log in to unmask]> wrote:
>>   class GentleThread : public Runnable {
>>     ...
>>     }
>>   class BruteThread : public Runnable {
>>     ...
>>     }
>> will inherit an identical implementation of the interface Runnable from the
>> ancestor class. Do you see the difference?
>No. It has been said that Runnable is a pure virtual class. So there is no
>inherited identical implementation.

Well, you are right. Indeed, there was a pure virtual class (and the abstract
interfaces only in another reply) and I missed that point. So, we can see from
that example that C++ has the facilities that can be used as "interfaces" in
Java sense, but in C++ those facilities are rather advanced, while in Java the
interfaces are the primary entities, at the same level as the simple classes.
Also, in C++ those facilities are regarded as a kinds of classes, which seems
to be rather artifical and misleading.

Alexander Kopilovitch                      [log in to unmask]