blob: c40dfdc7b82755875375776f12310fbb510b3693 [file] [log] [blame]
<HTML>
<HEAD>
<TITLE>Extensions to the C++ Standard</TITLE>
<LINK REL=StyleSheet HREF="../rw.css" TYPE="text/css" TITLE="Apache stdcxx Stylesheet"></HEAD>
<BODY BGCOLOR=#FFFFFF>
<A HREF="A-3.html"><IMG SRC="images/bprev.gif" WIDTH=20 HEIGHT=21 ALT="Previous file" BORDER=O></A><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><IMG SRC="images/bnonext.gif" WIDTH=25 HEIGHT=21 ALT="No next file" BORDER=O><DIV CLASS="DOCUMENTNAME"><B>Apache C++ Standard Library Reference Guide</B></DIV>
<H1>Appendix B: Extensions to the C++ Standard</H1>
<UL>
</UL>
<P>This implementation of the C++ Standard Library contains numerous features that enhance its functionality, but do not strictly conform to the Standard as it is written. These extensions are listed in <A HREF="B.html#Table&nbsp;39">Table&nbsp;39</A>. If you are reading this manual online, click the name of the extension to take you to its location in the documentation. </P>
<H4><A NAME="Table&nbsp;39">Table&nbsp;39: Extensions to the C++ Standard Library&nbsp;</A></H4>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="3">
<tr><td valign=top><B>Class or </B>
<B>Component</B>
</td>
<td valign=top><B>Extension</B>
</td>
</tr>
<tr><td valign=top colspan=1 rowspan=7><P CLASS="TABLE"><B><I><A HREF="basic-filebuf.html">basic_filebuf</A></I></B></P>
</td>
<td valign=top><P CLASS="TABLE"><SAMP><B>basic_filebuf</B></SAMP><SAMP>(int fd, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_filebuf</B></SAMP><SAMP>(FILE *fp, char_type *buf = 0,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top>
<A NAME="idx1355"></A><PRE><B>attach</B>(int fd);</PRE>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>detach</B></SAMP><SAMP>(); </SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(const char* fname, ios_base::openmode mode, </SAMP></P>
<P CLASS="TABLE"><SAMP> long protection = 0666);</SAMP></P>
<P CLASS="TABLE">The behavior of the function when <SAMP>(fname == 0)</SAMP> evaluates to <SAMP>true</SAMP> is defined as an extension of this implementation.</P>
<P CLASS="TABLE">The <SAMP>protection</SAMP> argument is not part of the Standard.</P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(int fd, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(FILE *fp, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top colspan=1 rowspan=7><P CLASS="TABLE"><B><I><A HREF="basic-fstream.html">basic_fstream</A></I></B></P>
</td>
<td valign=top><P CLASS="TABLE"><SAMP><B>basic_fstream</B></SAMP><SAMP>(const char* s,</SAMP></P>
<P CLASS="TABLE"><SAMP> ios_base::openmode mode, long protection);</SAMP></P>
<P CLASS="TABLE">The <SAMP>protection</SAMP> argument is not part of the Standard.</P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ifstream</B></SAMP><SAMP>(int fd, char_type *buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ifstream</B></SAMP><SAMP>(FILE *fp, char_type* buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(const char* s, </SAMP></P>
<P CLASS="TABLE"><SAMP> ios_base::openmode, long protection);</SAMP></P>
<P CLASS="TABLE">The <SAMP>protection</SAMP> argument is not part of the Standard.</P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(int fd, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(FILE *fp, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>fd</B></SAMP><SAMP>() const;</SAMP></P>
</td>
</tr>
<tr><td valign=top colspan=1 rowspan=6><P CLASS="TABLE"><B><I><A HREF="basic-ifstream.html">basic_ifstream</A></I></B></P>
</td>
<td valign=top><P CLASS="TABLE"><SAMP><B>basic_ifstream</B></SAMP><SAMP>(const char* s</SAMP></P>
<P CLASS="TABLE"><SAMP> ios_base::openmode mode, </SAMP></P>
<P CLASS="TABLE"><SAMP> long protection = 0666);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ifstream</B></SAMP><SAMP>(int fd, char_type *buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ifstream</B></SAMP><SAMP>(FILE *fp, char_type* buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(const char* s, ios_base::openmode,</SAMP></P>
<P CLASS="TABLE"><SAMP> long protection);</SAMP></P>
<P CLASS="TABLE">The <SAMP>protection</SAMP> argument is not part of the Standard.</P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(int fd, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(FILE *fp, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top colspan=1 rowspan=6><P CLASS="TABLE"><B><I><A HREF="basic-ofstream.html">basic_ofstream</A></I></B></P>
</td>
<td valign=top><P CLASS="TABLE"><SAMP><B>basic_ofstream</B></SAMP><SAMP>(const char* s, </SAMP></P>
<P CLASS="TABLE"><SAMP> ios_base::openmode mode = ios_base::in,</SAMP></P>
<P CLASS="TABLE"><SAMP> long protection = 0666);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ofstream</B></SAMP><SAMP>(int fd, char_type *buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>basic_ofstream</B></SAMP><SAMP>(FILE *fp, char_type* buf,</SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n); </SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(const char* s, ios_base::openmode,</SAMP></P>
<P CLASS="TABLE"><SAMP> long protection);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(int fd, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><B>open</B></SAMP><SAMP>(FILE *fp, char_type *buf = 0, </SAMP></P>
<P CLASS="TABLE"><SAMP> streamsize n = /* default size */);</SAMP></P>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><SAMP><A HREF="count.html">count()</A></SAMP>, </P>
<P CLASS="TABLE"><SAMP><A HREF="count.html">count_if()</A></SAMP></P>
</td>
<td valign=top>
<PRE><B>count</B>(InputIterator first, InputIterator last,
const T&amp; value, Size&amp; n);
</PRE>
</td>
</tr>
<tr><td valign=top>&nbsp;
</td>
<td valign=top>
<PRE><B>count_if</B>(InputIterator first,
InputIterator last, Predicate pred, Size&amp; n);
</PRE>
</td>
</tr>
<tr><td valign=top><P CLASS="TABLE"><B><I><A HREF="ios-base.html">ios_base</A></I></B></P>
</td>
<td valign=top><P CLASS="TABLE">The elements <SAMP>nocreate</SAMP> and <SAMP>noreplace</SAMP> of the <SAMP>openmode</SAMP> bitmask type are provided for compatibility with Classic iostreams as an extension of this implementation. See <B><I><A HREF="bitmasktypes.html">Bitmask Types</A></I></B> for more information.</P>
</td>
</tr>
</TABLE>
<BR>
<HR>
<A HREF="A-3.html"><IMG SRC="images/bprev.gif" WIDTH=20 HEIGHT=21 ALT="Previous file" BORDER=O></A><A HREF="noframes.html"><IMG SRC="images/btop.gif" WIDTH=56 HEIGHT=21 ALT="Top of Document" BORDER=O></A><A HREF="booktoc.html"><IMG SRC="images/btoc.gif" WIDTH=56 HEIGHT=21 ALT="Contents" BORDER=O></A><A HREF="tindex.html"><IMG SRC="images/bindex.gif" WIDTH=56 HEIGHT=21 ALT="Index page" BORDER=O></A><IMG SRC="images/bnonext.gif" WIDTH=20 HEIGHT=21 ALT="No next file" BORDER=O>
<!-- Google Analytics tracking code -->
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-1775151-1";
urchinTracker();
</script>
<!-- end of Google Analytics tracking code -->
</BODY>
</HTML>