Ghashtable хранения двойной - PullRequest
2 голосов
/ 13 июля 2011

Здравствуйте, мне было интересно, возможно ли сохранить double в ghashtable, учитывая, что нет метода gdouble_to_pointer.Я следую учебному пособию, которое я нашел в сети IBM http://www.ibm.com/developerworks/linux/tutorials/l-glib/section5.html, но я не могу найти способ использовать int в качестве ключа и double в качестве сохраняемого значения.Любая помощь будет большой благодарностью!

1 Ответ

2 голосов
/ 14 июля 2011

Если вы хотите использовать int в качестве ключа, вы должны использовать g_int_hash () и g_int_equal () при создании GHashTable.

Поскольку использование double для значений идет ... вы можете 'т.Проблема в том, что вы не можете гарантировать, что sizeof (void *)> = sizeof (double), поэтому вы не можете использовать такой трюк, как GINT_TO_POINTER ()

...