59
59
class Glib::ustring_Iterator< T ></h3>
61
61
<p>The iterator type of <a class="el" href="classGlib_1_1ustring.html" title="Glib::ustring has much the same interface as std::string, but contains Unicode characters...">Glib::ustring</a>. </p>
62
<p>Note this is not a random access iterator but a bidirectional one, since all index operations need to iterate over the UTF-8 data. Use <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00969.html#be7a9a9a314d1ccbcfdd361b22e1e960">std::advance()</a> to move to a certain position. However, all of the relational operators are available: <code>== != < > <= >=</code></p>
62
<p>Note this is not a random access iterator but a bidirectional one, since all index operations need to iterate over the UTF-8 data. Use <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00971.html#abe7a9a9a314d1ccbcfdd361b22e1e960">std::advance()</a> to move to a certain position. However, all of the relational operators are available: <code>== != < > <= >=</code></p>
63
63
<p>A writeable iterator isn't provided because: The number of bytes of the old UTF-8 character and the new one to write could be different. Therefore, any write operation would invalidate all other iterators pointing into the same string. </p>
64
64
<hr/><h2>Member Typedef Documentation</h2>
65
65
<a class="anchor" id="aa32792b92260dd761d004c690b972068"></a><!-- doxytag: member="Glib::ustring_Iterator::difference_type" ref="aa32792b92260dd761d004c690b972068" args="" -->