<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <title>edelib: String Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">edelib  <span id="projectnumber">2.0.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- Generated by Doxygen 1.7.6.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceedelib.html">edelib</a> </li> <li class="navelem"><a class="el" href="classedelib_1_1String.html">String</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-attribs">Static Public Attributes</a> | <a href="#related">Related Functions</a> </div> <div class="headertitle"> <div class="title">String Class Reference</div> </div> </div><!--header--> <div class="contents"> <!-- doxytag: class="edelib::String" --> <p>A (relatively simple) string implementation. <a href="classedelib_1_1String.html#details">More...</a></p> <p><code>#include <<a class="el" href="String_8h_source.html">edelib/String.h</a>></code></p> <p><a href="classedelib_1_1String-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a8db865e64c3c3f65ec6a0b6fd8c09a94">String</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#af85366dc541925a5ffcad4821d766e5d">String</a> (const char *str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a326f0bd688ed2b378c3672cc93688e2e">String</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a998ab66c7adb23a76179eec57d05de9d">~String</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a25722c0e2d7eba74ffb149d72cf16fbe">assign</a> (const char *str, size_type len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a869e7161e078852fb013690ab716237a">assign</a> (const char *str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#af4d59c7b4d81bc479884ba4de9cfbd29">assign</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a2fb39c065c27318758df2167ce5458e3">append</a> (const char *str, size_type len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a313da97786f3dcdf897ce5287a63b327">append</a> (const char *str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a1bf2cadf22d578f17c061fce2ca0183b">append</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ac9c5e2199b54fb5ba6f3935fd48d5b32">append</a> (size_type num, const char &ch)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aa5a46e0d75fdd9f8d966196289f4b219">reserve</a> (size_type len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a96694be414566ea2329dd789bd6d8335">swap</a> (<a class="el" href="classedelib_1_1String.html">String</a> &from)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aef921468bc1580e5b31c0880b1d40f92">substr</a> (size_type index, size_type num=<a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">npos</a>) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a300f82e5a93fcc34456bc6d282b4bcbb">find</a> (const char *str, size_type offset) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a6e604adc7d75bc512c8e4361d13c9d04">find</a> (char ch, size_type offset) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aedec3d68e72479cac7eaae5469bfb1e1">find</a> (const char *str) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ae683fe63c33c388e9ba1c6392dd477eb">clear</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a0aff7311d684a0e0ef33125616a73385">printf</a> (const char *fmt,...)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a4049cdc5231e598bd70fadff6e497cdf">trim_left</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a7d68677686a5d3690fb70486522eb2ed">trim_right</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ab45dbcc2a569d9716ef321e05ea9ac3a">trim</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a3f3f956aa78f472c5e5e7275fd9f854d">c_str</a> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a4f8299f2a033f040c0c0d92a6406280f">data</a> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#af82978762f57d4553b0f2c1331c60e65">length</a> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#abc55c7fcfa90f443ce012873292b629d">capacity</a> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a8f26081fc8698ecb3276704a7fa715f1">empty</a> (void) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a6d59fceed09d9496ce765d520dd875d8">replace</a> (char c1, char c2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">char & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a114930f20d1b6d987150583f2586c9e8">operator[]</a> (size_type index)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">char </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a3b9cdf50a48f31d546cc38a5122c2778">operator[]</a> (size_type index) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a3e626a1045ee2f91b14775af5c1df38b">operator=</a> (const char *str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aa7694556e438408131523c949aeecdd0">operator=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aab96e27bce71536905a3a04deba20dda">operator+=</a> (const char *str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a8c09167d2a0ffed51ebea0865b3e16e9">operator+=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ad29ee991baa69b30d96566edf5e79510">operator+=</a> (const char &ch)</td></tr> <tr><td colspan="2"><h2><a name="pub-static-attribs"></a> Static Public Attributes</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static const size_type </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">npos</a></td></tr> <tr><td colspan="2"><h2><a name="related"></a> Related Functions</h2></td></tr> <tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p> </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aa32f7361ca2291f8996eec46dd3baaed">operator+</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &s1, const <a class="el" href="classedelib_1_1String.html">String</a> &s2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a5cec349438a2989e4dd87b91c230fe91">operator+</a> (const char *s1, const <a class="el" href="classedelib_1_1String.html">String</a> &s2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classedelib_1_1String.html">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a8312b703b4c3e068ff2680e4005b3cc4">operator+</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &s1, const char *s2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ae618933f8842a34d047c78073c1cab9c">operator==</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aaae40a07b88bda9062df26fd704ecdb1">operator!=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a0a3c146012dca15a6418b2f72b0fa10d">operator></a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#adff8a1f5b9e5cc659ce6cd8d69315006">operator>=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a08fdb033e5ff95662f21080a17de0627">operator<</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a3a0e4fba99de3e05c122cf4784e9d148">operator<=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const char *str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a23a1b9964ed28c2f2c8b3639d3d6088d">operator==</a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#ac03279cd67abeedf49244349b2e3c0a9">operator!=</a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a448bc57375a295ddb96e3f3977a0dd93">operator></a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#af0ed03b1642cd5930360e24493dcc838">operator>=</a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#aef4fd9d44dab1db62b6646649dbed506">operator<</a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a1300c87dea4bf67741e6367d104c24dd">operator<=</a> (const char *str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a203b726b83a9360edabdcfaea9a3d4df">operator==</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a45f0de58ed8add2403865e25a4c6cfc3">operator!=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a26a9f8908b6aeaac52ef3252d49bb458">operator></a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a9fb11cd6aa3d2ea8cf9c8eb7e2a0daf8">operator>=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a56ebd4ab2f0e85ddf5f8128df54d79b3">operator<</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classedelib_1_1String.html#a660c8d06d2fd38bed5e56cd2ac5af203">operator<=</a> (const <a class="el" href="classedelib_1_1String.html">String</a> &str1, const <a class="el" href="classedelib_1_1String.html">String</a> &str2)</td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>A (relatively simple) string implementation. </p> <p>This implementation tries to be compatible with std::string implementation, althought it does not implement all gory details from std::string. There are few reasons why this class exists:</p> <ul> <li>complilation time; things with this class compile 3x faster than with std::string</li> <li>extending; std::string is pain in the ass to extend, and providing possible copy of std::string implementation would require to provide a bunch of additional code</li> </ul> <p>This class does not provide find_xxx(), insert() and erase methods and iterators.</p> <p>Some methods, like <em><a class="el" href="classedelib_1_1String.html#a0aff7311d684a0e0ef33125616a73385">printf()</a></em> does not exist in std::string. Also, the behaviour of <em><a class="el" href="classedelib_1_1String.html#abc55c7fcfa90f443ce012873292b629d">capacity()</a></em> differs from std::string like: </p> <div class="fragment"><pre class="fragment"> <a class="code" href="classedelib_1_1String.html#a8db865e64c3c3f65ec6a0b6fd8c09a94">String</a> s = <span class="stringliteral">"foo"</span>; std::string s1 = <span class="stringliteral">"baz"</span>; s.capacity() != s1.capacity() <span class="comment">// implementation specific, according to the Standard</span> <span class="comment">// but...</span> s.reserve(20); s1.reserve(20); s.capacity() == s1.capacity() <span class="comment">// same sizes</span> </pre></div><p>If you are not familiar with std::string, following things with this class can be done: </p> <div class="fragment"><pre class="fragment"> <a class="code" href="classedelib_1_1String.html#a8db865e64c3c3f65ec6a0b6fd8c09a94">String</a> s = <span class="stringliteral">"sample string"</span>; s += <span class="stringliteral">" yes"</span>; <span class="comment">// gives "sample string yes"</span> s.clear(); <span class="comment">// clear content</span> s.assign(<span class="stringliteral">"foo"</span>) <span class="comment">// same as: s = "foo"</span> s.append(<span class="stringliteral">"baz"</span>) <span class="comment">// append some data, gives "foobaz"</span> <span class="keywordflow">if</span>(s == <span class="stringliteral">"foobaz"</span>) ... <span class="comment">// comparison</span> <span class="keywordflow">if</span>(s > <span class="stringliteral">"bla"</span>) ... <span class="comment">// check if content of s is grater than "bla"</span> s += <span class="stringliteral">"xxx"</span>; <span class="comment">// same as s.append("xxx");</span> s.find(<span class="stringliteral">"baz"</span>); <span class="comment">// return position of "baz" in "foobaz"</span> s.find(<span class="stringliteral">"demo"</span>); <span class="comment">// return String::npos, and can be checked like:</span> <span class="keywordflow">if</span>(s.find(<span class="stringliteral">"demo"</span>) == <a class="code" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a>) <span class="comment">// do something smart</span> <span class="comment">// not in std::string</span> s.printf(<span class="stringliteral">"%s = %i"</span>, <span class="stringliteral">"num"</span>, 4); <span class="comment">// will be "num = 4"</span> </pre></div><dl class="note"><dt><b>Note:</b></dt><dd>Since <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> increase internal buffer's size when is needed, some things should be considered to minimize reallocations:<ul> <li>use <a class="el" href="classedelib_1_1String.html#aa5a46e0d75fdd9f8d966196289f4b219">reserve()</a> if you know the length</li> <li>prefer operator+= than operator+</li> </ul> </dd></dl> <dl class="todo"><dt><b><a class="el" href="todo.html#_todo000025">Todo:</a></b></dt><dd>COW would be nice </dd></dl> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a8db865e64c3c3f65ec6a0b6fd8c09a94"></a><!-- doxytag: member="edelib::String::String" ref="a8db865e64c3c3f65ec6a0b6fd8c09a94" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Create empty string object </p> </div> </div> <a class="anchor" id="af85366dc541925a5ffcad4821d766e5d"></a><!-- doxytag: member="edelib::String::String" ref="af85366dc541925a5ffcad4821d766e5d" args="(const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Create a new string with copy of pointer to characters</p> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a pointer to c-like string (it should not be NULL) </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a326f0bd688ed2b378c3672cc93688e2e"></a><!-- doxytag: member="edelib::String::String" ref="a326f0bd688ed2b378c3672cc93688e2e" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Create a new string with copy of another string</p> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>is object of type <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a998ab66c7adb23a76179eec57d05de9d"></a><!-- doxytag: member="edelib::String::~String" ref="a998ab66c7adb23a76179eec57d05de9d" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">~<a class="el" href="classedelib_1_1String.html">String</a> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Clears all internal data. All possible external pointers to internal buffer will be invalidated </p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a2fb39c065c27318758df2167ce5458e3"></a><!-- doxytag: member="edelib::String::append" ref="a2fb39c065c27318758df2167ce5458e3" args="(const char *str, size_type len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a2fb39c065c27318758df2167ce5458e3">append</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_type </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Appends content of c-like string, with given length to the end of current string</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a pointer to c-like string (it should not be NULL) </td></tr> <tr><td class="paramname">len</td><td>a number of character that will be appended </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a313da97786f3dcdf897ce5287a63b327"></a><!-- doxytag: member="edelib::String::append" ref="a313da97786f3dcdf897ce5287a63b327" args="(const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a2fb39c065c27318758df2167ce5458e3">append</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Appends content of c-like string with it's full length to the end of current string</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a pointer to c-like string (it should not be NULL) </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a1bf2cadf22d578f17c061fce2ca0183b"></a><!-- doxytag: member="edelib::String::append" ref="a1bf2cadf22d578f17c061fce2ca0183b" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a2fb39c065c27318758df2167ce5458e3">append</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Appends content of <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> object to the end of current string</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a object of type <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ac9c5e2199b54fb5ba6f3935fd48d5b32"></a><!-- doxytag: member="edelib::String::append" ref="ac9c5e2199b54fb5ba6f3935fd48d5b32" args="(size_type num, const char &ch)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a2fb39c065c27318758df2167ce5458e3">append</a> </td> <td>(</td> <td class="paramtype">size_type </td> <td class="paramname"><em>num</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char & </td> <td class="paramname"><em>ch</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Appends given character num times at the end of character string</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">num</td><td>is number of given character </td></tr> <tr><td class="paramname">ch</td><td>is character to append </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a25722c0e2d7eba74ffb149d72cf16fbe"></a><!-- doxytag: member="edelib::String::assign" ref="a25722c0e2d7eba74ffb149d72cf16fbe" args="(const char *str, size_type len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a25722c0e2d7eba74ffb149d72cf16fbe">assign</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_type </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Assign content of c-like string, with given size. This method will destroy the previous content of the string</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a pointer to c-like string (it should not be NULL) </td></tr> <tr><td class="paramname">len</td><td>a number of character that will be assigned </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a869e7161e078852fb013690ab716237a"></a><!-- doxytag: member="edelib::String::assign" ref="a869e7161e078852fb013690ab716237a" args="(const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a25722c0e2d7eba74ffb149d72cf16fbe">assign</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Assign content of c-like string with it's full length.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a pointer to c-like string (it should not be NULL) </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="af4d59c7b4d81bc479884ba4de9cfbd29"></a><!-- doxytag: member="edelib::String::assign" ref="af4d59c7b4d81bc479884ba4de9cfbd29" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a25722c0e2d7eba74ffb149d72cf16fbe">assign</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Assing content of <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> object</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>a object of type <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="afaee44f7b89e348000f3af4a76308d7b"></a><!-- doxytag: member="edelib::String::c_str" ref="afaee44f7b89e348000f3af4a76308d7b" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return data formated as c-like string</p> <p>Can be used as input for C functions, like: </p> <div class="fragment"><pre class="fragment"> <span class="keywordflow">if</span>(strcmp(s.c_str(), <span class="stringliteral">"my smart string"</span>) == 0) ... </pre></div> <p>Referenced by <a class="el" href="classTiXmlPrinter.html#a91b713da0032c680dfa529354ecf1d0d">TiXmlPrinter::CStr()</a>, <a class="el" href="classTiXmlPrinter.html#a35793ea09a1f98e6005741507f7e3980">TiXmlPrinter::Indent()</a>, <a class="el" href="classTiXmlPrinter.html#ab48af389e9a758e844f628c5497f33ab">TiXmlPrinter::LineBreak()</a>, <a class="el" href="classedelib_1_1String.html#aaae40a07b88bda9062df26fd704ecdb1">String::operator!=()</a>, <a class="el" href="classedelib_1_1String.html#a08fdb033e5ff95662f21080a17de0627">String::operator<()</a>, <a class="el" href="classedelib_1_1String.html#a3a0e4fba99de3e05c122cf4784e9d148">String::operator<=()</a>, <a class="el" href="classedelib_1_1String.html#ae618933f8842a34d047c78073c1cab9c">String::operator==()</a>, <a class="el" href="classedelib_1_1String.html#a0a3c146012dca15a6418b2f72b0fa10d">String::operator>()</a>, and <a class="el" href="classedelib_1_1String.html#adff8a1f5b9e5cc659ce6cd8d69315006">String::operator>=()</a>.</p> </div> </div> <a class="anchor" id="a3f3f956aa78f472c5e5e7275fd9f854d"></a><!-- doxytag: member="edelib::String::c_str" ref="a3f3f956aa78f472c5e5e7275fd9f854d" args="(void) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">c_str</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Return data formated as c-like string </p> </div> </div> <a class="anchor" id="abc55c7fcfa90f443ce012873292b629d"></a><!-- doxytag: member="edelib::String::capacity" ref="abc55c7fcfa90f443ce012873292b629d" args="(void) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_type <a class="el" href="classedelib_1_1String.html#abc55c7fcfa90f443ce012873292b629d">capacity</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Retrun size of internal buffer </p> </div> </div> <a class="anchor" id="ae683fe63c33c388e9ba1c6392dd477eb"></a><!-- doxytag: member="edelib::String::clear" ref="ae683fe63c33c388e9ba1c6392dd477eb" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#ae683fe63c33c388e9ba1c6392dd477eb">clear</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Clear all elements of current string </p> </div> </div> <a class="anchor" id="a4f8299f2a033f040c0c0d92a6406280f"></a><!-- doxytag: member="edelib::String::data" ref="a4f8299f2a033f040c0c0d92a6406280f" args="(void) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* <a class="el" href="classedelib_1_1String.html#a4f8299f2a033f040c0c0d92a6406280f">data</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Retrun pointer to internal buffer</p> <p>Do <b>not</b> use this function as input for C functions. </p> </div> </div> <a class="anchor" id="a8f26081fc8698ecb3276704a7fa715f1"></a><!-- doxytag: member="edelib::String::empty" ref="a8f26081fc8698ecb3276704a7fa715f1" args="(void) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="classedelib_1_1String.html#a8f26081fc8698ecb3276704a7fa715f1">empty</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Checks if string is empty </p> </div> </div> <a class="anchor" id="a300f82e5a93fcc34456bc6d282b4bcbb"></a><!-- doxytag: member="edelib::String::find" ref="a300f82e5a93fcc34456bc6d282b4bcbb" args="(const char *str, size_type offset) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_type <a class="el" href="classedelib_1_1String.html#a300f82e5a93fcc34456bc6d282b4bcbb">find</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_type </td> <td class="paramname"><em>offset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns starting position of str starting at offset. If str is not found, <a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a> will be returned</p> <dl class="return"><dt><b>Returns:</b></dt><dd>position of str, or <a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a> if not found </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>is string we are looking for </td></tr> <tr><td class="paramname">offset</td><td>position to start looking from </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a6e604adc7d75bc512c8e4361d13c9d04"></a><!-- doxytag: member="edelib::String::find" ref="a6e604adc7d75bc512c8e4361d13c9d04" args="(char ch, size_type offset) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_type <a class="el" href="classedelib_1_1String.html#a300f82e5a93fcc34456bc6d282b4bcbb">find</a> </td> <td>(</td> <td class="paramtype">char </td> <td class="paramname"><em>ch</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_type </td> <td class="paramname"><em>offset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns starting position of given character starting at the given offset. If character is not found, <a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a> will be returned</p> <dl class="return"><dt><b>Returns:</b></dt><dd>position of given character, or <a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a> if not found </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">ch</td><td>character we are looking for </td></tr> <tr><td class="paramname">offset</td><td>position to start looking from </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aedec3d68e72479cac7eaae5469bfb1e1"></a><!-- doxytag: member="edelib::String::find" ref="aedec3d68e72479cac7eaae5469bfb1e1" args="(const char *str) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_type <a class="el" href="classedelib_1_1String.html#a300f82e5a93fcc34456bc6d282b4bcbb">find</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns start of given string. Behaves same as find(str, 0) </p> </div> </div> <a class="anchor" id="af82978762f57d4553b0f2c1331c60e65"></a><!-- doxytag: member="edelib::String::length" ref="af82978762f57d4553b0f2c1331c60e65" args="(void) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_type <a class="el" href="classedelib_1_1String.html#af82978762f57d4553b0f2c1331c60e65">length</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Retrun size of character data </p> <p>Referenced by <a class="el" href="classedelib_1_1String.html#a203b726b83a9360edabdcfaea9a3d4df">String::operator==()</a>, <a class="el" href="classTiXmlPrinter.html#a7b470b21b5807f0a9162bef72aebfef9">TiXmlPrinter::Size()</a>, and <a class="el" href="namespaceedelib.html#ae9a74aa6cd85961439930feb7e95a0ef">edelib::stringtok()</a>.</p> </div> </div> <a class="anchor" id="aab96e27bce71536905a3a04deba20dda"></a><!-- doxytag: member="edelib::String::operator+=" ref="aab96e27bce71536905a3a04deba20dda" args="(const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& operator+= </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Same as append(str) </p> </div> </div> <a class="anchor" id="a8c09167d2a0ffed51ebea0865b3e16e9"></a><!-- doxytag: member="edelib::String::operator+=" ref="a8c09167d2a0ffed51ebea0865b3e16e9" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& operator+= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Same as append(String type) </p> </div> </div> <a class="anchor" id="ad29ee991baa69b30d96566edf5e79510"></a><!-- doxytag: member="edelib::String::operator+=" ref="ad29ee991baa69b30d96566edf5e79510" args="(const char &ch)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& operator+= </td> <td>(</td> <td class="paramtype">const char & </td> <td class="paramname"><em>ch</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Same as append(1, ch) </p> </div> </div> <a class="anchor" id="a3e626a1045ee2f91b14775af5c1df38b"></a><!-- doxytag: member="edelib::String::operator=" ref="a3e626a1045ee2f91b14775af5c1df38b" args="(const char *str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& operator= </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Same as assign(str) </p> </div> </div> <a class="anchor" id="aa7694556e438408131523c949aeecdd0"></a><!-- doxytag: member="edelib::String::operator=" ref="aa7694556e438408131523c949aeecdd0" args="(const String &str)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Same as assign(String type) </p> </div> </div> <a class="anchor" id="a114930f20d1b6d987150583f2586c9e8"></a><!-- doxytag: member="edelib::String::operator[]" ref="a114930f20d1b6d987150583f2586c9e8" args="(size_type index)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char& operator[] </td> <td>(</td> <td class="paramtype">size_type </td> <td class="paramname"><em>index</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Returns character at given index </p> </div> </div> <a class="anchor" id="a3b9cdf50a48f31d546cc38a5122c2778"></a><!-- doxytag: member="edelib::String::operator[]" ref="a3b9cdf50a48f31d546cc38a5122c2778" args="(size_type index) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char operator[] </td> <td>(</td> <td class="paramtype">size_type </td> <td class="paramname"><em>index</em></td><td>)</td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns character at given index </p> </div> </div> <a class="anchor" id="a0aff7311d684a0e0ef33125616a73385"></a><!-- doxytag: member="edelib::String::printf" ref="a0aff7311d684a0e0ef33125616a73385" args="(const char *fmt,...)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#a0aff7311d684a0e0ef33125616a73385">printf</a> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>fmt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname"><em>...</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Assign data in printf form. All previous content will be deleted. </p> </div> </div> <a class="anchor" id="a6d59fceed09d9496ce765d520dd875d8"></a><!-- doxytag: member="edelib::String::replace" ref="a6d59fceed09d9496ce765d520dd875d8" args="(char c1, char c2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a>& <a class="el" href="classedelib_1_1String.html#a6d59fceed09d9496ce765d520dd875d8">replace</a> </td> <td>(</td> <td class="paramtype">char </td> <td class="paramname"><em>c1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char </td> <td class="paramname"><em>c2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Replace every occurence of c1 with the c2</p> <dl class="return"><dt><b>Returns:</b></dt><dd>itself </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">c1</td><td>is character that will be replaced </td></tr> <tr><td class="paramname">c2</td><td>is character used for replacement </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aa5a46e0d75fdd9f8d966196289f4b219"></a><!-- doxytag: member="edelib::String::reserve" ref="aa5a46e0d75fdd9f8d966196289f4b219" args="(size_type len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#aa5a46e0d75fdd9f8d966196289f4b219">reserve</a> </td> <td>(</td> <td class="paramtype">size_type </td> <td class="paramname"><em>len</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Set size of internal buffer</p> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">len</td><td>is size we want </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aef921468bc1580e5b31c0880b1d40f92"></a><!-- doxytag: member="edelib::String::substr" ref="aef921468bc1580e5b31c0880b1d40f92" args="(size_type index, size_type num=npos) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> <a class="el" href="classedelib_1_1String.html#aef921468bc1580e5b31c0880b1d40f92">substr</a> </td> <td>(</td> <td class="paramtype">size_type </td> <td class="paramname"><em>index</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_type </td> <td class="paramname"><em>num</em> = <code><a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">npos</a></code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Returns a substring of the current string starting at the index with num characters long. If num is not specified, returned will be remain data starting from index</p> <dl class="return"><dt><b>Returns:</b></dt><dd>substring </dd></dl> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">index</td><td>starting position for substring </td></tr> <tr><td class="paramname">num</td><td>ending position for substring </td></tr> </table> </dd> </dl> <p>Referenced by <a class="el" href="namespaceedelib.html#ae9a74aa6cd85961439930feb7e95a0ef">edelib::stringtok()</a>.</p> </div> </div> <a class="anchor" id="a96694be414566ea2329dd789bd6d8335"></a><!-- doxytag: member="edelib::String::swap" ref="a96694be414566ea2329dd789bd6d8335" args="(String &from)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#a96694be414566ea2329dd789bd6d8335">swap</a> </td> <td>(</td> <td class="paramtype"><a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>from</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Exchange the elements of current string with given</p> <dl class="params"><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">from</td><td>is replacement target </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ab45dbcc2a569d9716ef321e05ea9ac3a"></a><!-- doxytag: member="edelib::String::trim" ref="ab45dbcc2a569d9716ef321e05ea9ac3a" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#ab45dbcc2a569d9716ef321e05ea9ac3a">trim</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Remove starting and ending spaces </p> </div> </div> <a class="anchor" id="a4049cdc5231e598bd70fadff6e497cdf"></a><!-- doxytag: member="edelib::String::trim_left" ref="a4049cdc5231e598bd70fadff6e497cdf" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#a4049cdc5231e598bd70fadff6e497cdf">trim_left</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Remove starting spaces </p> </div> </div> <a class="anchor" id="a7d68677686a5d3690fb70486522eb2ed"></a><!-- doxytag: member="edelib::String::trim_right" ref="a7d68677686a5d3690fb70486522eb2ed" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void <a class="el" href="classedelib_1_1String.html#a7d68677686a5d3690fb70486522eb2ed">trim_right</a> </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Remove ending spaces </p> </div> </div> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="aaae40a07b88bda9062df26fd704ecdb1"></a><!-- doxytag: member="edelib::String::operator!=" ref="aaae40a07b88bda9062df26fd704ecdb1" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> and cstring are not equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="ac03279cd67abeedf49244349b2e3c0a9"></a><!-- doxytag: member="edelib::String::operator!=" ref="ac03279cd67abeedf49244349b2e3c0a9" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator!= </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring and <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> are not equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a45f0de58ed8add2403865e25a4c6cfc3"></a><!-- doxytag: member="edelib::String::operator!=" ref="a45f0de58ed8add2403865e25a4c6cfc3" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if two <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a>'s are not equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="aa32f7361ca2291f8996eec46dd3baaed"></a><!-- doxytag: member="edelib::String::operator+" ref="aa32f7361ca2291f8996eec46dd3baaed" args="(const String &s1, const String &s2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> operator+ </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</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="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>s2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Concat two <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> objects </p> </div> </div> <a class="anchor" id="a5cec349438a2989e4dd87b91c230fe91"></a><!-- doxytag: member="edelib::String::operator+" ref="a5cec349438a2989e4dd87b91c230fe91" args="(const char *s1, const String &s2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> operator+ </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>s1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>s2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Concat cstring and <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> object </p> </div> </div> <a class="anchor" id="a8312b703b4c3e068ff2680e4005b3cc4"></a><!-- doxytag: member="edelib::String::operator+" ref="a8312b703b4c3e068ff2680e4005b3cc4" args="(const String &s1, const char *s2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classedelib_1_1String.html">String</a> operator+ </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>s1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>s2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Concat <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> and cstring </p> </div> </div> <a class="anchor" id="a08fdb033e5ff95662f21080a17de0627"></a><!-- doxytag: member="edelib::String::operator<" ref="a08fdb033e5ff95662f21080a17de0627" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator< </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is less than cstring </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="aef4fd9d44dab1db62b6646649dbed506"></a><!-- doxytag: member="edelib::String::operator<" ref="aef4fd9d44dab1db62b6646649dbed506" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator< </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring is less than <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a56ebd4ab2f0e85ddf5f8128df54d79b3"></a><!-- doxytag: member="edelib::String::operator<" ref="a56ebd4ab2f0e85ddf5f8128df54d79b3" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator< </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if first <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is less than the second </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a3a0e4fba99de3e05c122cf4784e9d148"></a><!-- doxytag: member="edelib::String::operator<=" ref="a3a0e4fba99de3e05c122cf4784e9d148" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator<= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is less or equal to cstring </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a1300c87dea4bf67741e6367d104c24dd"></a><!-- doxytag: member="edelib::String::operator<=" ref="a1300c87dea4bf67741e6367d104c24dd" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator<= </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring is less or equal to the <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a660c8d06d2fd38bed5e56cd2ac5af203"></a><!-- doxytag: member="edelib::String::operator<=" ref="a660c8d06d2fd38bed5e56cd2ac5af203" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator<= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if first <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is less or equal than the second </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="ae618933f8842a34d047c78073c1cab9c"></a><!-- doxytag: member="edelib::String::operator==" ref="ae618933f8842a34d047c78073c1cab9c" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> and cstring are equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a23a1b9964ed28c2f2c8b3639d3d6088d"></a><!-- doxytag: member="edelib::String::operator==" ref="a23a1b9964ed28c2f2c8b3639d3d6088d" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator== </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring and <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> are equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a203b726b83a9360edabdcfaea9a3d4df"></a><!-- doxytag: member="edelib::String::operator==" ref="a203b726b83a9360edabdcfaea9a3d4df" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if two <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a>'s are equal </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>, and <a class="el" href="classedelib_1_1String.html#af82978762f57d4553b0f2c1331c60e65">String::length()</a>.</p> </div> </div> <a class="anchor" id="a0a3c146012dca15a6418b2f72b0fa10d"></a><!-- doxytag: member="edelib::String::operator>" ref="a0a3c146012dca15a6418b2f72b0fa10d" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator> </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is larger than cstring </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a448bc57375a295ddb96e3f3977a0dd93"></a><!-- doxytag: member="edelib::String::operator>" ref="a448bc57375a295ddb96e3f3977a0dd93" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator> </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring is larger than <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a26a9f8908b6aeaac52ef3252d49bb458"></a><!-- doxytag: member="edelib::String::operator>" ref="a26a9f8908b6aeaac52ef3252d49bb458" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator> </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if first <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is larger than the second </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="adff8a1f5b9e5cc659ce6cd8d69315006"></a><!-- doxytag: member="edelib::String::operator>=" ref="adff8a1f5b9e5cc659ce6cd8d69315006" args="(const String &str1, const char *str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator>= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is larger or equal to the cstring </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="af0ed03b1642cd5930360e24493dcc838"></a><!-- doxytag: member="edelib::String::operator>=" ref="af0ed03b1642cd5930360e24493dcc838" args="(const char *str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator>= </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if cstring is larger or equal to <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <a class="anchor" id="a9fb11cd6aa3d2ea8cf9c8eb7e2a0daf8"></a><!-- doxytag: member="edelib::String::operator>=" ref="a9fb11cd6aa3d2ea8cf9c8eb7e2a0daf8" args="(const String &str1, const String &str2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator>= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classedelib_1_1String.html">String</a> & </td> <td class="paramname"><em>str2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Check if first <a class="el" href="classedelib_1_1String.html" title="A (relatively simple) string implementation.">String</a> is larger or equal than the second </p> <p>References <a class="el" href="classedelib_1_1String.html#afaee44f7b89e348000f3af4a76308d7b">String::c_str()</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="ab87de14283f53f998f4113b7d96f33b1"></a><!-- doxytag: member="edelib::String::npos" ref="ab87de14283f53f998f4113b7d96f33b1" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const size_type <a class="el" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">npos</a><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>This will be returned when <a class="el" href="classedelib_1_1String.html#a300f82e5a93fcc34456bc6d282b4bcbb">find()</a> method fails. If is meant to be used in form: </p> <div class="fragment"><pre class="fragment"> <a class="code" href="classedelib_1_1String.html#a8db865e64c3c3f65ec6a0b6fd8c09a94">String</a> s; <span class="keywordflow">if</span>(s.find(<span class="stringliteral">"this does not exist"</span>) == <a class="code" href="classedelib_1_1String.html#ab87de14283f53f998f4113b7d96f33b1">String::npos</a>) <span class="comment">// do something smart</span> </pre></div> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>edelib/<a class="el" href="String_8h_source.html">String.h</a></li> </ul> </div><!-- contents --> <hr class="footer"/><address class="footer"><small> Generated on Tue Jun 5 2012 17:49:03 for edelib by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.7.6.1 </small></address> </body> </html>