<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>ICU 3.8: unistr.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.1 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="classes.html"><span>Data Structures</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li> <form action="search.php" method="get"> <table cellspacing="0" cellpadding="0" border="0"> <tr> <td><label> <u>S</u>earch for </label></td> <td><input type="text" name="query" value="" size="20" accesskey="s"/></td> </tr> </table> </form> </li> </ul></div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div> <h1>unistr.h File Reference</h1>C++ API: Unicode String. <a href="#_details">More...</a> <p> <code>#include "<a class="el" href="rep_8h-source.html">unicode/rep.h</a>"</code><br> <p> <a href="unistr_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classUnicodeString.html">UnicodeString</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classUnicodeString.html">UnicodeString</a> is a string class that stores Unicode characters directly and provides similar functionality as the Java String and StringBuffer classes. <a href="classUnicodeString.html#_details">More...</a><br></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="unistr_8h.html#7fd781b068b28ee2db708090aa32df8f">U_COMPARE_CODE_POINT_ORDER</a> 0x8000</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Option bit for u_strCaseCompare, u_strcasecmp, unorm_compare, etc: Compare strings in code point order instead of code unit order. <a href="#7fd781b068b28ee2db708090aa32df8f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="unistr_8h.html#308c066384b8560030fb3482bcb13381">US_INV</a> U_NAMESPACE_QUALIFIER UnicodeString::kInvariant</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor which constructs a Unicode string from an invariant-character char * string. <a href="#308c066384b8560030fb3482bcb13381"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="unistr_8h.html#eab1ff09f666cf5fce35fc88cf37d714">UNICODE_STRING</a>(cs, _length) U_NAMESPACE_QUALIFIER <a class="el" href="classUnicodeString.html">UnicodeString</a>(TRUE, (const UChar *)L ## cs, _length)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unicode String literals in C++. <a href="#eab1ff09f666cf5fce35fc88cf37d714"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="unistr_8h.html#6cd56429cbf4fe567a97c9d1a46e96ae">UNICODE_STRING_SIMPLE</a>(cs) UNICODE_STRING(cs, -1)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unicode String literals in C++. <a href="#6cd56429cbf4fe567a97c9d1a46e96ae"></a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="pwin32_8h.html#b1967d8591af1a4e48c37fd2b0f184d0">int32_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ustring__ustrlen.html#gc4d8a5581fc5bde71d62ebd0a7a84ec5">u_strlen</a> (const UChar *s)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Determine the length of an array of UChar. <a href="group__ustring__ustrlen.html#gc4d8a5581fc5bde71d62ebd0a7a84ec5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">U_COMMON_API <a class="el" href="classUnicodeString.html">UnicodeString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="unistr_8h.html#9ba928a0602f95e68a1973dc26970ca5">operator+</a> (const <a class="el" href="classUnicodeString.html">UnicodeString</a> &s1, const <a class="el" href="classUnicodeString.html">UnicodeString</a> &s2)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a new <a class="el" href="classUnicodeString.html">UnicodeString</a> with the concatenation of two others. <a href="#9ba928a0602f95e68a1973dc26970ca5"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> C++ API: Unicode String. <p> <p> Definition in file <a class="el" href="unistr_8h-source.html">unistr.h</a>.<hr><h2>Define Documentation</h2> <a class="anchor" name="7fd781b068b28ee2db708090aa32df8f"></a><!-- doxytag: member="unistr.h::U_COMPARE_CODE_POINT_ORDER" ref="7fd781b068b28ee2db708090aa32df8f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define U_COMPARE_CODE_POINT_ORDER 0x8000 </td> </tr> </table> </div> <div class="memdoc"> <p> Option bit for u_strCaseCompare, u_strcasecmp, unorm_compare, etc: Compare strings in code point order instead of code unit order. <p> <dl compact><dt><b><a class="el" href="stable.html#_stable001337">Stable:</a></b></dt><dd>ICU 2.2 </dd></dl> <p> Definition at line <a class="el" href="unistr_8h-source.html#l00041">41</a> of file <a class="el" href="unistr_8h-source.html">unistr.h</a>. </div> </div><p> <a class="anchor" name="eab1ff09f666cf5fce35fc88cf37d714"></a><!-- doxytag: member="unistr.h::UNICODE_STRING" ref="eab1ff09f666cf5fce35fc88cf37d714" args="(cs, _length)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define UNICODE_STRING </td> <td>(</td> <td class="paramtype">cs, <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">_length </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> U_NAMESPACE_QUALIFIER <a class="el" href="classUnicodeString.html">UnicodeString</a>(TRUE, (const UChar *)L ## cs, _length)</td> </tr> </table> </div> <div class="memdoc"> <p> Unicode String literals in C++. <p> Dependent on the platform properties, different <a class="el" href="classUnicodeString.html">UnicodeString</a> constructors should be used to create a <a class="el" href="classUnicodeString.html">UnicodeString</a> object from a string literal. The macros are defined for maximum performance. They work only for strings that contain "invariant characters", i.e., only latin letters, digits, and some punctuation. See <a class="el" href="utypes_8h.html">utypes.h</a> for details.<p> The string parameter must be a C string literal. The length of the string, not including the terminating <code>NUL</code>, must be specified as a constant. The U_STRING_DECL macro should be invoked exactly once for one such string variable before it is used. <dl compact><dt><b><a class="el" href="stable.html#_stable001339">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p> Definition at line <a class="el" href="unistr_8h-source.html#l00092">92</a> of file <a class="el" href="unistr_8h-source.html">unistr.h</a>. </div> </div><p> <a class="anchor" name="6cd56429cbf4fe567a97c9d1a46e96ae"></a><!-- doxytag: member="unistr.h::UNICODE_STRING_SIMPLE" ref="6cd56429cbf4fe567a97c9d1a46e96ae" args="(cs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define UNICODE_STRING_SIMPLE </td> <td>(</td> <td class="paramtype">cs </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> UNICODE_STRING(cs, -1)</td> </tr> </table> </div> <div class="memdoc"> <p> Unicode String literals in C++. <p> Dependent on the platform properties, different <a class="el" href="classUnicodeString.html">UnicodeString</a> constructors should be used to create a <a class="el" href="classUnicodeString.html">UnicodeString</a> object from a string literal. The macros are defined for improved performance. They work only for strings that contain "invariant characters", i.e., only latin letters, digits, and some punctuation. See <a class="el" href="utypes_8h.html">utypes.h</a> for details.<p> The string parameter must be a C string literal. <dl compact><dt><b><a class="el" href="stable.html#_stable001340">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl> <p> Definition at line <a class="el" href="unistr_8h-source.html#l00112">112</a> of file <a class="el" href="unistr_8h-source.html">unistr.h</a>. </div> </div><p> <a class="anchor" name="308c066384b8560030fb3482bcb13381"></a><!-- doxytag: member="unistr.h::US_INV" ref="308c066384b8560030fb3482bcb13381" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define US_INV U_NAMESPACE_QUALIFIER UnicodeString::kInvariant </td> </tr> </table> </div> <div class="memdoc"> <p> Constant to be used in the UnicodeString(char *, int32_t, EInvariant) constructor which constructs a Unicode string from an invariant-character char * string. <p> About invariant characters see <a class="el" href="utypes_8h.html">utypes.h</a>. This constructor has no runtime dependency on conversion code and is therefore recommended over ones taking a charset name string (where the empty string "" indicates invariant-character conversion).<p> <dl compact><dt><b><a class="el" href="stable.html#_stable001338">Stable:</a></b></dt><dd>ICU 3.2 </dd></dl> <p> Definition at line <a class="el" href="unistr_8h-source.html#l00070">70</a> of file <a class="el" href="unistr_8h-source.html">unistr.h</a>. </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="9ba928a0602f95e68a1973dc26970ca5"></a><!-- doxytag: member="unistr.h::operator+" ref="9ba928a0602f95e68a1973dc26970ca5" args="(const UnicodeString &s1, const UnicodeString &s2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">U_COMMON_API <a class="el" href="classUnicodeString.html">UnicodeString</a> operator+ </td> <td>(</td> <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> & </td> <td class="paramname"> <em>s1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classUnicodeString.html">UnicodeString</a> & </td> <td class="paramname"> <em>s2</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Create a new <a class="el" href="classUnicodeString.html">UnicodeString</a> with the concatenation of two others. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>s1</em> </td><td>The first string to be copied to the new one. </td></tr> <tr><td valign="top"></td><td valign="top"><em>s2</em> </td><td>The second string to be copied to the new one, after s1. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>UnicodeString(s1).append(s2) </dd></dl> <dl compact><dt><b><a class="el" href="stable.html#_stable001342">Stable:</a></b></dt><dd>ICU 2.8 </dd></dl> </div> </div><p> <hr size="1"><address style="align: right;"><small>Generated on Fri Sep 14 12:59:28 2007 for ICU 3.8 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.1 </small></address> </body> </html>