Re: data type that preserve order
- From: Andrea Zagli <azagli libero it>
- To: Emmanuele Bassi <ebassi gmail com>
- Cc: gtk-app-devel-list gnome org
- Subject: Re: data type that preserve order
- Date: Sat, 31 Oct 2015 09:51:55 +0000
Il giorno sab 31 ott 2015 08:10:20 CET, Andrea Zagli ha scritto:
Il giorno ven 30 ott 2015 19:09:47 CET, Emmanuele Bassi ha scritto:
Hi;
On 30 October 2015 at 16:43, Andrea Zagli <azagli libero it> wrote:
is there a data type, similar to array, that preserve the order on which
elements are inserted?
All the array and list types preserve the order of insertion. For
obvious reasons, GHashTable doesn't.
for example ghashtable and gptrarray doesn't preserve the order, so when
they are traversed (for example with a "for" cicle, regarding
gptrarray) the
order may be not the same when elements are inserted
GPtrArray preserves the order of insertion — it's an array, after all.
Why do you think it does not?
it is written on the help
https://developer.gnome.org/glib/stable/glib-Pointer-Arrays.html
"If you remove elements from the array, elements at the end of the
array are moved into the space previously occupied by the removed
element. This means that you should not rely on the index of
particular elements remaining the same."
may be also other data type makes the same thing? i didn't find
reference about that
however help for g_ptr_array_remove and g_ptr_array_remove_index says:
"... The following elements are moved down one place. ..." (it is what
i want)
may be i didn't understand the first
but g_ptr_array_remove_fast and g_ptr_array_remove_index_fast: "...
The last element in the array is used to fill in the space, so this
function does not preserve the order of the array. ..."
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]