1

GLib の片方向リンクリストの先頭から慣用的に「ポップ」するにはどうすればよいですか? 一緒に接着できる関数がいくつかありますが、意図した の逆としては目立ちませんg_slist_prepend

4

3 に答える 3

3

ユースケースに応じて、

// pop and discard head
list = g_slist_delete_link(list, list);

また

// pop head but keep it for further use
GSList *head = list;
list = g_slist_remove_link(list, head);
// do stuff with head
g_slist_free1(head);
于 2012-04-13T16:39:32.687 に答える
2

とを持っている両端キューを使用できます。g_queue_push_headg_queue_pop_head

于 2012-04-13T16:33:19.597 に答える
0
list = g_slist_remove(list, list->data);
于 2012-04-13T16:33:57.023 に答える