X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=libstdc%2B%2B-v3%2Fdocs%2Fhtml%2Fexplanations.html;fp=libstdc%2B%2B-v3%2Fdocs%2Fhtml%2Fexplanations.html;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=dac57b872887cb422aaae7770921e576c0a9e7b2;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libstdc++-v3/docs/html/explanations.html b/libstdc++-v3/docs/html/explanations.html deleted file mode 100644 index dac57b87..00000000 --- a/libstdc++-v3/docs/html/explanations.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - - - - Explanatory notes about libstdc++-v3 design - - - - -

Explanatory notes about libstdc++-v3 -design

- -

The latest version of this document is always available at - - http://gcc.gnu.org/onlinedocs/libstdc++/explanations.html. -

- -

To the libstdc++-v3 homepage. -

- - - -
-

"I/O packages", --enable-cstdio

-

In addition to all the nifty things which C++ can do for I/O, its library - also includes all of the I/O capabilites of C. Making them work together - can be a challenge, not only - for the programmer but for the - implementors as well. -

-

There are two ways to do a C++ library: the cool way, and the easy way. - More specifically, the cool-but-easy-to-get-wrong way, and the - easy-to-guarantee-correct-behavior way. For 3.0, the easy way is used. -

-

Choosing 'stdio' is the easy way. It builds a C++ library which forwards - all operations to the C library. Many of the C++ I/O functions are - specified in the standard 'as if' they called a certain C function; the - easiest way to get it correct is to actually call that function. The - disadvantage is that the C++ code will run slower (fortunately, the layer - is thin). -

-

Choosing 'libio' is the cool way; it allows C++ and C to share some - buffers. It's disabled because of tricky synchronization issues. Other - cool ways (various methods of sharing resources between C and C++ - facilities, instead of layering) are possible. This approach can speed - up I/O significantly. -

-

Other packages are possible. For a new package, a header must be - written to provide types like streamsize (usually just a typedef), as - well as some internal types like __c_file_type and - __c_lock (for the stdio case, these are FILE (as in - "FILE*") and a simple POSIX mutex, respectively). An - interface class called __basic_file must also be filled in; - as an example, for the stdio case, these member functions are all - inline calles to fread, fwrite, etc. -

-

Return to the top of the page or - to the homepage. -

- - -
-

Internal Allocators

-

-

-

Return to the top of the page or - to the homepage. -

- - - - -
-

-See license.html for copying conditions. -Comments and suggestions are welcome, and may be sent to -the libstdc++ mailing list. -

- - - -