From: Dmitry A. Kazakov <mailbox@dmitry-kazakov.de>
Subject: Re: Imitation is the sincerest form of flattery
Date: Wed, 26 Mar 2003 17:21:39 +0100
Date: 2003-03-26T17:21:39+01:00 [thread overview]
Message-ID: <1ij38vsm381u560p0rmhenia606ggo9jpv@4ax.com> (raw)
In-Reply-To: 1048691202.136151@master.nyc.kbcfp.com
On Wed, 26 Mar 2003 10:06:41 -0500, Hyman Rosen <hyrosen@mail.com>
wrote:
>Dmitry A. Kazakov wrote:
>> Wrong for what? There is no other way to specify a type set other than
>> through closures of a subtyping relation. That's what inheritance is
>> about.
>
>Yes there is. We've been through all this before.
>The other way is through use patterns.
Pattern is not a language term. So it cannot be an other way. Other
way is cut'n'paste and patterns is a manual how to do it.
>> Let you declare:
>> void Foo (Element& X);
>> then A[i] have to be of Element type to allow substitutability:
>>
>> Foo (A [i]);
>> If A [i] is of some proxy class then you need ether to make the class
>> a subtype of Element, or to write a wrapper for Foo.
>
>No, you declare
> template <typename Element> void Foo(Element &X);
>and you just call
> Foo(A[i]);
Exactly what I meant. It is no more a normal subroutine taking Element
a parameter. All users of my array have to know that it is not an
array; that they cannot index it is a normal way; that they have to
review and redesign all the code working with the type Element if
there is an array built on Element. Excellent.
---
Regards,
Dmitry Kazakov
www.dmitry-kazakov.de
next prev parent reply other threads:[~2003-03-26 16:21 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-03-14 17:22 Imitation is the sincerest form of flattery Robert C. Leif
2003-03-14 17:57 ` Warren W. Gay VE3WWG
2003-03-14 18:16 ` chris.danx
2003-03-14 18:17 ` Hyman Rosen
2003-03-15 14:18 ` Georg Bauhaus
2003-03-16 1:06 ` Hyman Rosen
2003-03-18 10:37 ` Georg Bauhaus
2003-03-18 15:34 ` Dmitry A. Kazakov
2003-03-19 11:12 ` Georg Bauhaus
2003-03-20 8:42 ` Dmitry A. Kazakov
2003-03-20 14:27 ` Frank J. Lhota
2003-03-21 8:44 ` Dmitry A. Kazakov
2003-03-21 17:16 ` Pascal Obry
2003-03-22 9:05 ` Dmitry A. Kazakov
2003-03-22 14:11 ` Pascal Obry
2003-03-22 23:12 ` AG
2003-03-23 9:01 ` Dmitry A. Kazakov
2003-03-23 8:51 ` Dmitry A. Kazakov
2003-03-24 16:52 ` Hyman Rosen
2003-03-24 18:10 ` Dmitry A. Kazakov
2003-03-24 18:33 ` Hyman Rosen
2003-03-25 5:04 ` Amir Yantimirov
2003-03-25 19:55 ` Dmitry A. Kazakov
2003-03-25 20:22 ` Hyman Rosen
2003-03-26 13:02 ` Dmitry A. Kazakov
2003-03-26 15:06 ` Hyman Rosen
2003-03-26 16:21 ` Dmitry A. Kazakov [this message]
2003-03-26 17:00 ` Hyman Rosen
2003-03-26 18:21 ` Bill Findlay
2003-03-26 18:40 ` Hyman Rosen
2003-03-22 10:01 ` Amir Yantimirov
2003-03-23 8:41 ` Dmitry A. Kazakov
2003-03-24 4:53 ` Amir Yantimirov
2003-03-24 18:10 ` Dmitry A. Kazakov
2003-03-25 5:48 ` Amir Yantimirov
2003-03-25 15:53 ` Frank J. Lhota
2003-03-25 16:44 ` Robert A Duff
2003-03-25 18:24 ` Frank J. Lhota
2003-03-25 20:06 ` Dmitry A. Kazakov
2003-03-27 19:45 ` Frank J. Lhota
2003-03-27 21:25 ` Pascal Obry
2003-03-28 13:34 ` Dmitry A. Kazakov
2003-04-01 14:38 ` Frank J. Lhota
2003-04-02 7:37 ` Dmitry A. Kazakov
2003-03-26 7:48 ` Amir Yantimirov
2003-03-26 13:35 ` Dmitry A. Kazakov
2003-03-26 7:32 ` Amir Yantimirov
2003-03-20 23:28 ` Matthew Heaney
2003-03-21 8:49 ` Dmitry A. Kazakov
2003-03-21 21:07 ` Georg Bauhaus
2003-03-22 9:04 ` Dmitry A. Kazakov
2003-03-22 10:05 ` AG
2003-03-22 15:25 ` Georg Bauhaus
2003-03-22 19:27 ` AG
2003-03-22 21:45 ` Vinzent Hoefler
2003-03-22 22:28 ` AG
2003-03-23 23:47 ` Robert A Duff
2003-03-28 16:34 ` Georg Bauhaus
2003-03-18 15:58 ` Hyman Rosen
2003-03-19 11:05 ` Georg Bauhaus
2003-03-23 11:31 ` Florian Weimer
2003-03-23 23:39 ` Hyman Rosen
2003-03-15 12:52 ` Florian Weimer
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox