Подтвердить что ты не робот

C Analog To STL

Просто потому, что мне любопытно - есть ли какой-либо C-аналог функциональности STL в С++? Я видел упоминание о GTK + библиотеке под названием glib, которую некоторые люди считают заполнением счета, но есть другие библиотеки, которые предоставили бы функциональность STL в C

4b9b3361

Ответ 1

Да, glib - довольно хороший выбор: он включает множество утилит для манипулирования контейнерами, такими как связанные списки, массивы, хеш-таблицы и т.д. И есть также объектно-ориентированная инфраструктура под названием GObject, которую вы можете использовать для создания объектов с сигналами и слотами в C (хотя и с довольно многословными именами функций, такими как gobject_set_property, так как C не имеет синтаксиса для объектов). И есть также код для основных циклов, чтобы вы могли писать программы, управляемые событиями.

Дополнительная информация из wikipedia: http://en.wikipedia.org/wiki/Glib

Glib изначально был частью GTK, но код без GUI был полностью учтен, чтобы вы могли использовать его в программах командной строки: http://library.gnome.org/devel/glib/stable/

Ответ 3

Хорошо, поскольку сама природа STL основана на шаблонах, которые C не имеет, было бы трудно приблизиться к STL в C. Лучшее, на что вы могли бы надеяться, это некоторые классы коллекций, которые манипулируют указателями void * с неизвестными объект.