Quote:
Yes, things are split apart. You must know where to look for it. This is the difficult part. It's better if all the functions for, for example, strings were just located inside one class. Then you wouldn't have to look for a namespace where those free functions are stored.
I mean, have you had a look at MSDN? Sure, it documents std::string, but nothing of the free functions or algorithms you want to use to use it better.
Easy to use, then, if you haven't been taught properly? Hardly.
That is a documentation problem, not a design problem.
Quote:
Yeah, but classes are simply more organized and makes it easier.
Otherwise you will put half in a class and half in a namespace, which makes it disorganized.
Or if you put everything in the namespace, we're back to plain C.
I think that the correct approach is to put everything in the namespace, unless you want to emphasize the separation from the core interface of the class. Obviously, we are not back to plain C since the namespace mechanism is at work to avoid name collision.