Существуют ли ресурсы библиотеки C, похожие на библиотеку Boost в C++?

Я не припомню, чтобы для C встречалось что-либо такое обширное, как библиотека Boost в C++.

@djechlin Я не думаю, что тебе следует ТАК наказывать. Предполагается, что он примет тот ответ, который сочтет лучшим. +1.

user529758 11.07.2012 23:03

@ H2CO3 и djechlin должны голосовать за / против, если у него есть для этого причина, которую он считает действительной.

becko 07.09.2012 06:30

@djechlin вы можете дать правильный ответ?

becko 07.09.2012 06:31

связанные: programmers.stackexchange.com/q/116650

becko 07.09.2012 06:32

На ум пришел @becko - glib, ответ, опубликованный agateau, набравший на данный момент 8 голосов. Я считаю, что ответ Брайана Стюарта был принят во время моего комментария или, возможно, двух слов «Нет».

djechlin 07.09.2012 17:57
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
22
5
9 215
6
Перейти к ответу Данный вопрос помечен как решенный

Ответы 6

Я ничего не видел. На самом деле, шаблоны C++ - это технология, обеспечивающая поддержку STL и большую часть преимуществ, а в C их нет. Я видел много библиотек C-интерфейса для таких вещей, как обработка изображений, трехмерная графика, работа в сети и т. д., Но никогда не видел настоящую библиотеку общего назначения, такую ​​как boost. Однако вы можете найти части - библиотеки потоков, строковые библиотеки и т. д. - которые похожи на разделы ускорения.

Ответ принят как подходящий

В зависимости от того, что именно вы пытаетесь сделать, существует APR (переносимая библиотека времени выполнения Apache), на которой построен демон Apache http.

http://apr.apache.org/

Для графического интерфейса есть wxWidgets (ранее wxWindows).

http://www.wxwidgets.org/

Вы можете взглянуть на glib. Он предоставляет довольно много интересных вещей, таких как контейнеры, поддержка юникода, многопоточность ...

Взгляните на его документация

GLib больше похож на STL, чем на boost. Но в любом случае хороший выбор.

Joe D 19.09.2010 00:18

Иногда упоминается ACE (Adaptive Communication Environment). Это не совсем сравнение яблок с яблоками. Boost предоставляет больше «базовых строительных блоков», тогда как ACE предоставляет более тесно интегрированную структуру, ориентированную на продукты для телекоммуникационных компаний. Я много использовал и то, и другое, и считаю, что Boost значительно превосходит их. Одним из больших преимуществ Boost является то, что многие из его функций будут отображаться в расширениях STL для будущего стандарта C++ 0x (см., Например, http://en.wikipedia.org/wiki/Technical_Report_1).

или можно посмотреть ccan http://ccan.ozlabs.org/

но нет, на самом деле нет полного пакета, ближе всего подходит glib

Glib частично компенсирует это в виде различных типов строк в Юникоде. Если вы добавите Gobject, вы можете получить некоторое объектное программирование, даже некоторую сборку мусора.

Другие вопросы по теме