📄 glib-sequences.html
字号:
<tr><td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td><td>a <a class="link" href="glib-Sequences.html#GSequenceIter"><span class="type">GSequenceIter</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td><td>user data</td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td>zero if the iterators are equal, a negative value if <em class="parameter"><code>a</code></em>comes before <em class="parameter"><code>b</code></em>, and a positive value if <em class="parameter"><code>b</code></em> comes before <em class="parameter"><code>a</code></em>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3274057"></a><h3><a name="g-sequence-new"></a>g_sequence_new ()</h3><a class="indexterm" name="id3274071"></a><pre class="programlisting"><a class="link" href="glib-Sequences.html#GSequence">GSequence</a>* g_sequence_new (<a class="link" href="glib-Datasets.html#GDestroyNotify">GDestroyNotify</a> data_destroy);</pre><p>Creates a new GSequence. The <em class="parameter"><code>data_destroy</code></em> function, if non-<a class="link" href="glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> willbe called on all items when the sequence is destroyed and on items thatare removed from the sequence.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>data_destroy</code></em> :</span></p></td><td> a <a class="link" href="glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> function, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td> a new <a class="link" href="glib-Sequences.html#GSequence"><span class="type">GSequence</span></a></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274184"></a><h3><a name="g-sequence-free"></a>g_sequence_free ()</h3><a class="indexterm" name="id3274199"></a><pre class="programlisting">void g_sequence_free (<a class="link" href="glib-Sequences.html#GSequence">GSequence</a> *seq);</pre><p>Frees the memory allocated for <em class="parameter"><code>seq</code></em>. If <em class="parameter"><code>seq</code></em> has a data destroy function associated with it, that function is called on all items in<em class="parameter"><code>seq</code></em>.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>seq</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequence"><span class="type">GSequence</span></a></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274282"></a><h3><a name="g-sequence-get-length"></a>g_sequence_get_length ()</h3><a class="indexterm" name="id3274297"></a><pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint">gint</a> g_sequence_get_length (<a class="link" href="glib-Sequences.html#GSequence">GSequence</a> *seq);</pre><p>Returns the length of <em class="parameter"><code>seq</code></em></p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>seq</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequence"><span class="type">GSequence</span></a></td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td> the length of <em class="parameter"><code>seq</code></em></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274382"></a><h3><a name="g-sequence-foreach"></a>g_sequence_foreach ()</h3><a class="indexterm" name="id3274398"></a><pre class="programlisting">void g_sequence_foreach (<a class="link" href="glib-Sequences.html#GSequence">GSequence</a> *seq, <a class="link" href="glib-Doubly-Linked-Lists.html#GFunc">GFunc</a> func, <a class="link" href="glib-Basic-Types.html#gpointer">gpointer</a> user_data);</pre><p>Calls <em class="parameter"><code>func</code></em> for each item in the sequence passing <em class="parameter"><code>user_data</code></em>to the function.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>seq</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequence"><span class="type">GSequence</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>func</code></em> :</span></p></td><td> the function to call for each item in <em class="parameter"><code>seq</code></em></td></tr><tr><td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td><td> user data passed to <em class="parameter"><code>func</code></em></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274530"></a><h3><a name="g-sequence-foreach-range"></a>g_sequence_foreach_range ()</h3><a class="indexterm" name="id3274545"></a><pre class="programlisting">void g_sequence_foreach_range (<a class="link" href="glib-Sequences.html#GSequenceIter">GSequenceIter</a> *begin, <a class="link" href="glib-Sequences.html#GSequenceIter">GSequenceIter</a> *end, <a class="link" href="glib-Doubly-Linked-Lists.html#GFunc">GFunc</a> func, <a class="link" href="glib-Basic-Types.html#gpointer">gpointer</a> user_data);</pre><p>Calls <em class="parameter"><code>func</code></em> for each item in the range (<em class="parameter"><code>begin</code></em>, <em class="parameter"><code>end</code></em>) passing<em class="parameter"><code>user_data</code></em> to the function.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>begin</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequenceIter"><span class="type">GSequenceIter</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequenceIter"><span class="type">GSequenceIter</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>func</code></em> :</span></p></td><td> a <a class="link" href="glib-Doubly-Linked-Lists.html#GFunc"><span class="type">GFunc</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td><td> user data passed to <em class="parameter"><code>func</code></em></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274721"></a><h3><a name="g-sequence-sort"></a>g_sequence_sort ()</h3><a class="indexterm" name="id3274736"></a><pre class="programlisting">void g_sequence_sort (<a class="link" href="glib-Sequences.html#GSequence">GSequence</a> *seq, <a class="link" href="glib-Doubly-Linked-Lists.html#GCompareDataFunc">GCompareDataFunc</a> cmp_func, <a class="link" href="glib-Basic-Types.html#gpointer">gpointer</a> cmp_data);</pre><p>Sorts <em class="parameter"><code>seq</code></em> using <em class="parameter"><code>cmp_func</code></em>.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>seq</code></em> :</span></p></td><td> a <a class="link" href="glib-Sequences.html#GSequence"><span class="type">GSequence</span></a></td></tr><tr><td><p><span class="term"><em class="parameter"><code>cmp_func</code></em> :</span></p></td><td> the <a class="link" href="glib-Doubly-Linked-Lists.html#GCompareDataFunc"><span class="type">GCompareDataFunc</span></a> used to sort <em class="parameter"><code>seq</code></em>. This function is passed two items of <em class="parameter"><code>seq</code></em> and should return 0 if they are equal, a negative value fi the first comes before the second, and a positive value if the second comes before the first.</td></tr><tr><td><p><span class="term"><em class="parameter"><code>cmp_data</code></em> :</span></p></td><td> user data passed to <em class="parameter"><code>cmp_func</code></em></td></tr></tbody></table></div><p class="since">Since 2.14</p></div><hr><div class="refsect2" lang="en"><a name="id3274885"></a><h3><a name="g-sequence-sort-iter"></a>g_sequence_sort_iter ()</h3><a class="indexterm" name="id3274900"></a><pre class="programlisting">void g_sequence_sort_iter (<a class="link" href="glib-Sequences.html#GSequence">GSequence</a> *seq, <a class="link" href="glib-Sequences.html#GSequenceIterCompareFunc">GSequenceIterCompareFunc</a> cmp_func, <a class="link" href="glib-Basic-Types.html#gpointer">gpointer</a> cmp_data);</pre><p>Like <a class="link" href="glib-Sequences.html#g-sequence-sort"><code class="function">g_sequence_sort()</code></a>, but uses a <a class="link" href="glib-Sequences.html#GSequenceIterCompareFunc"><span class="type">GSequenceIterCompareFunc</span></a> insteadof a GCompareDataFunc as the compare function</p><p>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -