dce/rpc "client" api

David Allan Finch David.Allan at Finch.org
Fri Aug 18 20:05:00 GMT 2000

Elrond wrote:
> The point in Samba is portability, and c++ isn't.

If you only use the minimum level of c++. IE stay
away from templates, multiple inheritance and do
not use any of the standard c++ libraries you will
find it is extreamly portable. We do use all the above
and they work with Sun's, GNU's & MS's C++ compiler.
The days of C++ unportability if you stay away from
template specialisation are long gone. Most C++
compilers are starting to get that right now.

> Another point are dynamic casts (I hope, that's the right
> name for casting a base object to a specific object,
> checking, that it is allowed to do so, because the object
> realy IS a specific object):

You should never nead to upcast if you have
designed your system correctly, this is what
virtual methods are for. It is true that for
performance reason it can be useful to upcast
but it is normal not neccessary.

> This technique is heavily used in Gtk+. And I was told,
> that this isn't realy a feature, that C++-compilers like. I
> was also told, that some old gcc-implementations (or
> whatever) are extremely slow, because they use strcmp for
> things.

There are other solution to there problems by using
the fact that a virtual method can return a different
type from the on on the base (can't remember the correct
name for this). But that is not really a discussion
for this list.

   /     The whole history of this invention has been a struggle
/\|/\    against time - Charles Babbage 1837 on the Analytical Engine
| K |    All Hail Discordia - Burn all Orange Books!
\___/    david.allan at finch.org - http://www.ironfort.com

More information about the samba-technical mailing list