diff options
Diffstat (limited to 'libstdc++-v3/docs/html/ext/howto.html')
-rw-r--r-- | libstdc++-v3/docs/html/ext/howto.html | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/libstdc++-v3/docs/html/ext/howto.html b/libstdc++-v3/docs/html/ext/howto.html index 8806e8a1198..33128726bbe 100644 --- a/libstdc++-v3/docs/html/ext/howto.html +++ b/libstdc++-v3/docs/html/ext/howto.html @@ -8,7 +8,7 @@ <META NAME="GENERATOR" CONTENT="vi and eight fingers"> <TITLE>libstdc++-v3 HOWTO: Extensions</TITLE> <LINK REL=StyleSheet HREF="../lib3styles.css"> -<!-- $Id: howto.html,v 1.4 2000/12/03 23:47:49 jsm28 Exp $ --> +<!-- $Id: howto.html,v 1.1.4.1 2001/05/14 19:48:58 bkoz Exp $ --> </HEAD> <BODY> @@ -39,6 +39,7 @@ <LI><A HREF="#1">Ropes and trees and hashes, oh my!</A> <LI><A HREF="#2">Added members</A> <LI><A HREF="#3">Allocators</A> + <LI><A HREF="#4">Compile-time checks</A> </UL> <HR> @@ -56,7 +57,8 @@ <tree> </PRE> are all here; <TT><bvector></TT> exposes the old bit_vector class that was used before specialization of vector<bool> was - available. <TT><hash_map></TT> and <TT><hash_set></TT> + available (it's actually a typedef for the specialization now). + <TT><hash_map></TT> and <TT><hash_set></TT> are discussed further below. <TT><rope></TT> is the SGI specialization for large strings ("rope," "large strings," get it? love those SGI folks). @@ -96,7 +98,7 @@ <P>(Side note: for those of you wondering, <B>"Why wasn't a hash table included in the Standard in the first #!$@ place?"</B> I'll give a quick answer: it was proposed, but too late and in too - unorganized a fashion. Some sort of hashing will undoubtably be + unorganized a fashion. Some sort of hashing will undoubtedly be included in a future Standard. </P> <P>Return <A HREF="#top">to top of page</A> or @@ -114,14 +116,21 @@ <P> <UL> <LI><TT>filebuf</TT>s have another ctor with this signature:<BR> -<TT>basic_filebuf(int __fd, const char* __name, ios_base::openmode __mode);</TT> +<TT>basic_filebuf(__c_file_type*, ios_base::openmode, int_type);</TT> <BR>This comes in very handy in a number of places, such as attaching Unix sockets, pipes, and anything else which uses file descriptors, into the IOStream buffering classes. The three - arguments are as follows:<BR> - <TT>int __fd, </TT>// open file descriptor<BR> - <TT>const char* __name, </TT><BR> - <TT>ios_base::openmode __mode </TT>// same as the other openmode uses + arguments are as follows: + <UL> + <LI><TT>__c_file_type* F </TT> + // the __c_file_type typedef usually boils down to stdio's FILE + <LI><TT>ios_base::openmode M </TT> + // same as all the other uses of openmode + <LI><TT>int_type B </TT> + // buffer size, defaults to BUFSIZ + </UL> + For those wanting to use file descriptors instead of FILE*'s, I + invite you to contemplate the mysteries of C's <TT>fdopen()</TT>. </UL> </P> <P>Return <A HREF="#top">to top of page</A> or @@ -137,6 +146,16 @@ <A HREF="../faq/index.html">to the FAQ</A>. </P> +<HR> +<H2><A NAME="4">Compile-time checks</A></H2> + <P>Currently libstdc++-v3 uses the concept checkers from the Boost + library to perform <A HREF="../19_diagnostics/howto.html#3">optional + compile-time checking</A> of template instantiations of the standard + containers. They are described in the linked-to page. + </P> + <P>Return <A HREF="#top">to top of page</A> or + <A HREF="../faq/index.html">to the FAQ</A>. + </P> @@ -146,9 +165,8 @@ <HR> <P CLASS="fineprint"><EM> Comments and suggestions are welcome, and may be sent to -<A HREF="mailto:pme@sources.redhat.com">Phil Edwards</A> or -<A HREF="mailto:gdr@gcc.gnu.org">Gabriel Dos Reis</A>. -<BR> $Id: howto.html,v 1.4 2000/12/03 23:47:49 jsm28 Exp $ +<A HREF="mailto:libstdc++@gcc.gnu.org">the mailing list</A>. +<BR> $Id: howto.html,v 1.1.4.1 2001/05/14 19:48:58 bkoz Exp $ </EM></P> |