Boost logo

Boost :

From: Ross Smith (ross.s_at_[hidden])
Date: 1999-12-11 17:21:55


jsiek_at_[hidden] wrote:
>
> Dave Abrahams writes:

[on the fact that the MSVC 5/6 libraries don't put the contents of the
<c*> headers in namespace std]

> > You could buy the updated MSVC library from Dinkumware, or you could try the
> > current STLport beta (www.stlport.org). We're still shaking out a few bugs,
> > but it's basically a complete portable free standard library. It'll probably
> > take a little configuring on your part, though ;)
>
> Thanks for the suggestion. Though my only interest in VC++ is on
> behalf of those using my libraries. I never use VC++ for any personal
> work :) (and I wish they wouldn't either!)

Personally, I always use the <*.h> forms of the C library headers
instead of the <c*> forms. There are two reasons for this: Windows and
Unix.

The Posix API headers all use the <*.h> forms, and indeed many of them
share the same name as the standard C headers, with additional contents.
Similarly, quite aside from the MSVC issue, the Windows API headers
include several <*.h> headers (and I'd expect the same to be true of any
other OS API). In the real world, virtually any non-toy program is going
to need to use the Posix or Windows API.

Yes, I know the party line is that OS APIs should at some point in the
future be enclosed in their own namespaces, but unfortunately some of us
labour under the handicap of having to write code that works today.

Frankly, I think the <c*> headers were a mistake. People are going to
have to use the <*.h> headers anyway for the foreseeable future. so why
bother with the <c*> ones? I hope (I couldn't find any mention of this
point in the standard) that we at least have a guarantee that including
<foo.h> and <cfoo> in the same module is always harmless; otherwise, a
lot of libraries, including Boost, are going to be useless.

--
Ross Smith <ross.s_at_[hidden]> The Internet Group, Auckland, New Zealand
========================================================================
    "Be careful about using the following code -- I've only proven
    that it works, I haven't tested it."           -- Donald Knuth

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