Boost logo

Boost :

From: jsiek_at_[hidden]
Date: 2000-08-17 12:00:01


It seems to me your argument is mostly about how std::string should
have been defined, which is a side issue. To argue directly against my
point you need to list reasons for using member functions instead of
free functions.

(whether to use "controllers" or not seems to be an orthogonal issue,
one could write "controllers" using a free-function based interface)

David Allan Finch writes:
> I am probably a lone voice in the wilderness on but I
> view that Coplin's (?) original analysis of this problem
> is incorrect and hence his derived solution is incorrect
> to.
>
> His premises is that if you have a complex class you
> can't extend it because you do not have access to
> the fundamental fields. Hence it is better to have
> access to a smaller set of methods and
> have complex functionality at namespace level.
>
> This is an incorrect (IMHO) conclusion. If you
> look at any real world physical implementation
> of a system, you will find that the complex functionality
> is rapped up in a new level of system. I.E. controllers.
>
> One of the classic problems that is used to show
> why there is a problem is extending the String
> class. IMHO the problem is that the String
> class is to complex and should have been implemented
> as a controller of a StringBuffer. You would then
> write your own String Manipulator or extend String
> to change the String Buffer how you wished it to be
> modified.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk