O resumo mais recente de 2021 recomendou estruturas e bibliotecas de código aberto c/c++. Atualizado continuamente.
quadro
Biblioteca Padrão Apache C++: é uma coleção de algoritmos, contêineres, iteradores e outros componentes básicos
ASL: Adobe Source Code Library fornece uma biblioteca de código-fonte C++ portátil e revisada por pares.
Boost: Uma grande coleção de bibliotecas C++ de uso geral.
BDE: Ambiente de desenvolvimento do Bloomberg Information Labs.
Cinder: uma comunidade de desenvolvimento de código aberto que fornece codificação criativa de qualidade profissional.
Bxxomfort: uma biblioteca leve somente de cabeçalho que transporta alguns dos novos recursos do C++ 11 para o C++ 03.
Dlib: Uma biblioteca C++ universal de plataforma cruzada projetada usando programação de contrato e tecnologia C++ moderna.
EASTL: parte pública EA-STL
ffead-cpp: Estrutura de desenvolvimento de aplicativos corporativos
Folly: Uma biblioteca C++ de código aberto desenvolvida e usada pelo Facebook.
JUCE: Uma biblioteca C++ abrangente para desenvolvimento de software multiplataforma
libphenom: Uma estrutura de eventos para construir sistemas de alto desempenho e altamente escaláveis.
LibSourcey: IO com eventos C++11 para streaming de vídeo em tempo real e aplicativos de rede de alto desempenho
LibU: uma biblioteca de ferramentas multiplataforma escrita em linguagem C
Loki: O design de uma biblioteca C++, incluindo a implementação de padrões e expressões de design comuns.
MiLi: uma pequena biblioteca C++ somente de cabeçalho
openFrameworks: Desenvolva um kit de ferramentas C++ para codificação criativa.
Qt: aplicativo multiplataforma e estrutura de interface de usuário
Motivo: uma estrutura multiplataforma que facilita aos desenvolvedores o uso de Java, .Net e Python, ao mesmo tempo que atende às suas necessidades de desempenho e vantagens do C++.
ROOT: Um conjunto de frameworks orientados a objetos com todas as funcionalidades para processar e analisar grandes quantidades de dados de forma muito eficiente, utilizado pelo CERN.
STLport: é uma versão representativa do STL
STXXL: Biblioteca de modelos padrão para grandes conjuntos de dados adicionais.
Ultimate++: estrutura de desenvolvimento rápido de aplicativos multiplataforma C++
Biblioteca de modelos do Windows: biblioteca C++ para desenvolvimento de aplicativos do Windows e componentes de UI
Yomm11: Abra vários métodos para C++ 11.
Loop de eventos assíncronos
Boost.Asio: Biblioteca C++ multiplataforma para rede e programação de E/S de baixo nível.
libev: Loop de tempo completo e de alto desempenho, ligeiramente modelado após libevent, mas não tem mais as mesmas limitações do libevent, e alguns de seus bugs foram corrigidos.
libevent: biblioteca de notificação de eventos
libuv: E/S assíncrona multiplataforma.
libco: coroutine, biblioteca IO subjacente do WeChat que suporta 800 milhões de usuários online ao mesmo tempo. Poderoso
ntyco: Uma versão C pura da estrutura de rotina, o código é curto e conciso, adequado para projetos incorporados.
libgo: estrutura de simultaneidade estilo Golang, biblioteca de corrotinas de implementação C++ 11
biblioteca de rede
ACE: Kit de ferramentas de rede orientada a objetos C++
Casablanca: SDK REST C++
cpp-netlib: Uma coleção de bibliotecas de código aberto para programação de rede avançada
Dyad.c: Rede assíncrona em C
libCurl: biblioteca de transferência de arquivos multiprotocolo
Mongoose: servidor web muito leve
Muduo: biblioteca de rede sem bloqueio C++ para servidores multithread Linux
net_skeleton: biblioteca cliente/servidor TCP para C/C++
WAFer: Plataforma de software ultraleve baseada em C para aplicativos escalonáveis do lado do servidor e da web. Para programadores C, considere node.js
Onion: Biblioteca de servidor HTTP em linguagem C, projetada para ser leve e fácil de usar.
POCO: Biblioteca de classes C++ para construção de aplicativos baseados em rede e Internet que podem ser executados em desktops, servidores, dispositivos móveis e sistemas embarcados.
RakNet: Um mecanismo de rede C++ de código aberto e plataforma cruzada para desenvolvedores de jogos.
Tufao: Um framework web assíncrono construído em C++ sobre Qt.
WebSocket++: biblioteca cliente/servidor websocket baseada em C++/Boost Aiso
ZeroMQ: biblioteca de comunicação assíncrona modular e de alta velocidade
Pilha de protocolos TCP/IP
pilha f: pilha de protocolos de código aberto da Tencent, uma pilha de protocolos de modo de usuário de alto desempenho baseada em DPDK.
NtyTcp: Pilha de protocolo de thread único, baseada em netmap, DPDK, implementação rawSocket.
LWIP: Uma versão simplificada da implementação da pilha de protocolos TCP/IP para a plataforma RAM.
mTCP: Uma pilha de protocolos TCP/IP de espaço de usuário altamente escalável para sistemas multi-core.
4.4BSD: * A pilha de protocolos nix é derivada do 4.4BSD.
Estrutura de aplicativo WEB
Nginx: um servidor web HTTP e proxy reverso de alto desempenho que também fornece serviços IMAP/POP3/SMTP.
Lighttpd: Um software de servidor web de código aberto que é seguro, rápido, compatível com os padrões da indústria, altamente adaptável e otimizado para ambientes de alta configuração.
Libmicrohttpd: Um servidor web de biblioteca C simples em software GNU. A API é simples e rápida.
shttpd: Estrutura de servidor web baseada em Mongoose.
CivetWeb: Fornece um servidor web C/C++ integrado, fácil de usar e poderoso, com suporte opcional para CGI, SSL e Lua.
CppCMS: Estrutura gratuita de desenvolvimento web de alto desempenho (não um CMS).
Crow: uma micro estrutura web C++ (inspirada em Python Flask)
Kore: Servidor/framework web ultrarrápido e flexível para aplicações web desenvolvidas em C.
libOnion: uma biblioteca leve que ajuda a criar servidores web usando a linguagem de programação C.
QDjango: Um framework web escrito em C++ e baseado na biblioteca Qt, tentando emular a API Django, daí o nome.
Wt: Biblioteca C++ para desenvolvimento de aplicações web.
Biblioteca padrão, algoritmos e funções
Biblioteca Padrão C++: É uma coleção de classes e funções escritas na linguagem principal e faz parte do próprio padrão ISO C++.
Biblioteca de modelos padrão: Biblioteca de modelos padrão, STL
Biblioteca C POSIX: especificação da biblioteca padrão C para sistemas POSIX
Comitê de Padrões ISO C++: Comitê de Padrões C++
biblioteca de áudio
FMOD: mecanismo de áudio multiplataforma fácil de usar e ferramenta de criação de jogos de conteúdo de áudio.
Maximilian: biblioteca de processamento de sinal digital de áudio e música C++
OpenAL: biblioteca de áudio de código aberto – API de áudio multiplataforma
Opus: um codec de áudio totalmente aberto, isento de royalties e altamente versátil
Speex: codec gratuito, obsoleto pela Opus
Tonic: síntese de áudio eficiente e fácil de usar em C++
Vorbis: Ogg Vorbis é um formato de áudio compactado universal totalmente aberto, não proprietário e isento de royalties.
ecologia
lisequence: Uma biblioteca C++ para representar e analisar dados de genética populacional.
SeqAn: Concentra-se em algoritmos e estruturas de dados para análise sequencial de dados biológicos.
Vcflib: biblioteca C++ para análise e processamento de arquivos VCF
Wham: Aplique testes de associação diretamente a variantes estruturais genéticas em arquivos BAM.
compressão
bzip2: Uma compactação de dados totalmente gratuita, sem patentes e de alta qualidade
doboz: biblioteca de compactação para descompactação rápida
PhysicsFS: Uma biblioteca que fornece acesso abstrato a vários arquivos, usados principalmente em videogames. O design foi parcialmente inspirado no subsistema de arquivos do Quake3.
KArchive: Uma biblioteca para criar, ler, gravar e manipular arquivos compactados (como zip e tar), que fornece compactação e descompactação transparente de dados usando o formato gzip por meio de uma série de subclasses de QIODevice.
LZ4: Algoritmo de compressão muito rápido
LZHAM: Banco de dados de compactação sem perdas, a taxa de compactação é próxima do LZMA, mas a velocidade de descompactação é muito mais rápida.
LZMA: O método de compactação padrão e comum para o formato 7z.
LZMAT: e sua biblioteca de compactação de dados rápida e sem perdas em tempo real
miniz: Um único arquivo de origem C, biblioteca de compactação/expansão, usando API compatível com zlib, leitura e gravação de arquivo ZIP, método de gravação PNG.
Minizip: a última correção de bug do Zlib, suporta abrangência de disco PKWARE, criptografia AES e buffer de IO.
Snappy: compressão e descompressão rápidas
ZLib: biblioteca de compactação de fluxo de dados muito compacta
ZZIPlib: Fornece acesso de leitura a arquivos ZIP.
Simultaneidade
Boost.Compute: biblioteca de computação GPU C++ para OpenCL
Bolt: uma biblioteca de modelos C++ otimizada para GPUs
C++ React: biblioteca de programação reativa para C++ 11
Intel TBB: blocos de construção de threading Intel
Libclsph: biblioteca de simulação de fluidos SPH acelerada por GPU baseada em OpenCL
OpenCL: Um padrão aberto para programação paralela de sistemas heterogêneos
OpenMP: API OpenMP
Thrust: uma biblioteca de algoritmos paralelos semelhante à biblioteca de modelos padrão C++
HPX: Um sistema de tempo de execução C++ universal para aplicações paralelas e distribuídas de qualquer tamanho
VexCL: biblioteca de modelos de expressão vetorial C++ para OpenCL/CUDA.
criptografia
Bcrypt: uma ferramenta de criptografia de arquivos multiplataforma, os arquivos criptografados são portáveis para todos os sistemas operacionais e processadores suportados.
BeeCrypt: Uma biblioteca gráfica de criptografia rápida com funções poderosas e interface conveniente.
Botan: biblioteca de criptografia C++
Crypto++: uma biblioteca C++ gratuita para esquemas de criptografia
GnuPG: uma implementação completa do padrão OpenPGP
GnuTLS: Biblioteca de comunicação segura que implementa protocolos SSL, TLS e DTLS
Libgcrypt: biblioteca gráfica de criptografia baseada em GnuPG.
Libmcrypt: Thread-safe, fornecendo uma API unificada.
LibreSSL: Protocolo SSL/TLS gratuito, um fork do OpenSSL 2014
LibTomCrypt: Uma ferramenta de criptografia muito abrangente, modular e portátil
libsodium: biblioteca de criptografia baseada em NaCI, opinativa e fácil de usar
Nettle: a biblioteca de criptografia subjacente
OpenSSL: uma biblioteca de criptografia de código aberto poderosa, comercial e completa.
Tiny AES128 em C: uma implementação pequena e portátil do algoritmo de criptografia AES128ESB implementado em C
banco de dados
hiberlite: mapeamento objeto-relacional C++ para Sqlite3
contratadois: Uma biblioteca cliente C muito simples para banco de dados Redis
LevelDB: armazenamento rápido de chave-valor
LMDB: um armazenamento de valor-chave incorporado que está em conformidade com os quatro elementos básicos de um banco de dados
MySQL++: um wrapper C++ que encapsula a API C do MySql
RocksDB: armazenamento rápido de valores-chave incorporados do Facebook
SQLite: um banco de dados relacional totalmente incorporado e completo que tem apenas algumas centenas de KB e pode ser incluído corretamente em seu projeto.
Redis: Um banco de dados de valor-chave do tipo log de código aberto escrito em linguagem ANSI C, em conformidade com o protocolo BSD, com suporte à rede e pode ser baseado em memória e persistente.
MongoDB: um banco de dados baseado em armazenamento distribuído de arquivos
depurar
Boost.Test: biblioteca de testes de reforço
Catch: Uma estrutura nativa C++ muito elegante que contém apenas arquivos de cabeçalho para testes de unidade, desenvolvimento orientado a testes e desenvolvimento orientado a comportamento.
CppUnit: estrutura de teste C++ portada do JUnit
CTest: driver de teste CMake
GoogleTest: estrutura de teste do Google C++
ig-debugheap: Heap de depuração multiplataforma para rastrear erros de memória
libtap: escrevendo testes em C
MemTrack: para rastrear alocações de memória em C++
MicroProfile: criador de perfil de tentativa de rede multiplataforma
minUnit: Uma mini estrutura de teste de unidade escrita em C, usando apenas duas macros
Remotery: um único analisador de arquivo C para visualizações da web
UnitTest++: estrutura leve de teste de unidade C++
recipiente
C++ B-Tree: uma biblioteca de modelos que implementa contêineres de memória de comando com base na estrutura de dados da árvore B
Hashmaps: implementação do algoritmo de tabela hash de endereçamento aberto em C++
motor de jogo
Cocos2d-x: Uma estrutura multiplataforma para construção de jogos 2D, livros interativos, apresentações e outras aplicações gráficas.
Grit: Um projeto comunitário para construir um motor de jogo gratuito para jogos 3D de mundo aberto.
lrrlicht: um mecanismo #D em tempo real de alto desempenho e código aberto escrito em linguagem C++
PolyCode: Uma estrutura de código aberto para criação de jogos implementada em C++ (empacotado com Lua).
biblioteca gráfica
bgfx: biblioteca de renderização multiplataforma
Cairo: biblioteca gráfica 2D com suporte a vários dispositivos de saída
Horde3D: Um pequeno mecanismo de renderização e animação 3D
magnum: mecanismo gráfico C++ 11 e OpenGL 2D/3D
Ogre 3D: um mecanismo de renderização 3D flexível, em tempo real e orientado a cenas, escrito em C++ (não um mecanismo de jogo)
OpenSceneGraph: kit de ferramentas gráficas 3D de código aberto de alto desempenho
Panda3D: Framework para renderização 3D e desenvolvimento de jogos, escrito em Python e C++.
Skia: uma biblioteca gráfica 2D completa para desenhar texto, gráficos e imagens
urho3d: Renderização multiplataforma e mecanismo de jogo.
processamento de imagem
Boost.GIL: Biblioteca geral de imagens
CImg: Um pequeno kit de ferramentas C++ de código aberto para processamento de imagens
FreeImage: Uma biblioteca de código aberto que suporta formatos de imagem comuns e outros formatos exigidos pelos aplicativos multimídia atuais.
GDCM: biblioteca DICOM de base
ITK: sistema de análise de imagem de código aberto multiplataforma
Magick++: interface C++ para o programa ImageMagick
OpenCV: biblioteca de visão computacional de código aberto
tesseract-ocr: mecanismo de OCR
VIGRA: Biblioteca de visão computacional C++ de uso geral para análise de imagens
VTK: Sistema de software livre de código aberto para computação gráfica 3D, processamento e visualização de imagens.
internacionalização
gettexto: GNU gettexto
IBM ICU: bibliotecas C, C++ e Java que fornecem suporte Unicode e globalização
libiconv: biblioteca de conversão de codificação entre diferentes codificações de caracteres
Biblioteca Json
congelado: gerador de análise Jason para C/C++
Jansson: biblioteca em linguagem C para codificação, decodificação e processamento de dados Jason
jbson: uma biblioteca para construir e iterar dados BSON e documentos Json em C++14
JeayeSON: uma biblioteca C++ JSON muito robusta que contém apenas arquivos de cabeçalho
JSON++: analisador JSON C++
json-parser: analisador JSON escrito em ANSI C portátil com consumo de memória muito baixo
json11: uma mini biblioteca JSON C++11
juta: analisador C++ JSON muito simples
ibjson: biblioteca de análise e impressão JSON em C, facilmente integrada com qualquer modelo
libjson: biblioteca JSON leve
PicoJSON: análise e serialização JSON em C++, incluindo apenas arquivos de cabeçalho
Qt-Json: uma classe simples para análise entre dados JSON e hierarquias QVariant
QJson: biblioteca baseada em Qt para mapear dados JSON para objetos QVariant
RepidJSON: um gerador rápido de análise JSON para C++, incluindo APIs estilo SAX e DOM
YAJL: Biblioteca de análise JSON de streaming rápido em linguagem C
registro
Boost.Log: Projetado para ser muito modular e extensível
easyloggingpp: biblioteca de registro em C++, contendo apenas um único arquivo de cabeçalho.
Log4cpp: Uma série de bibliotecas C++ que adicionam logs de maneira flexível a arquivos, logs do sistema, IDSA e outros locais.
templog: uma biblioteca C++ leve que pode adicionar log às suas aplicações C++
aprendizado de máquina, inteligência artificial
btsk: ferramenta de inicialização da árvore de comportamento do jogo
Objetos em evolução: biblioteca de computação evolucionária ANSI C++ baseada em modelo que pode ajudá-lo a escrever seus próprios algoritmos de otimização estocástica muito rapidamente.
Caffe: uma estrutura de rede neural rápida
CCV: Uma moderna biblioteca de visão computacional com a linguagem C como núcleo
mlpack: biblioteca extensível de aprendizado de máquina C++
OpenCV: biblioteca de visão computacional de código aberto
Recomendador: biblioteca de linguagem AC para recomendações/sugestões de produtos usando filtragem colaborativa.
SHOGUN: ferramenta de aprendizado de máquina Shogun
sofia-ml: Um conjunto de algoritmos incrementais rápidos para aprendizado de máquina
biblioteca de matemática
Armadillo: Uma biblioteca de álgebra linear C++ de alta qualidade que atinge um bom equilíbrio entre velocidade e facilidade de uso. A sintaxe é muito semelhante ao MatlAB
blaze: Biblioteca matemática C++ de alto desempenho para algoritmos densos e esparsos.
ceres-solver: Uma biblioteca C++ do Google para modelar e resolver problemas grandes e complexos de mínimos quadrados não lineares.
CGal: Uma coleção de algoritmos de conjunto eficientes e confiáveis
CML: biblioteca matemática C++ gratuita para jogos e gráficos
Eigen: Uma biblioteca de cabeçalho de modelo C++ de alto nível que cobre álgebra linear, matrizes, operações vetoriais, resolução numérica e outros algoritmos relacionados.
GMTL: Mathematical Graphics Template Library é um conjunto de ferramentas para implementar extensivamente gráficos básicos.
GMP: Biblioteca C/C++ para cálculos de alta precisão, manipulação de inteiros assinados, números racionais e números de ponto flutuante.
biblioteca multimídia
GStreamer: Uma biblioteca para construção de gráficos de componentes de processamento de mídia
LIVE555 Streaming Media: Biblioteca de streaming multimídia usando protocolos de padrão aberto (RTP/RTCP, RTSP, SIP)
libVLC: estrutura de mídia libVLC (VLC SDK)
QtAV: Uma estrutura de reprodução multimídia baseada em Qt e FFmpeg que pode ajudá-lo a escrever um player facilmente
SDL: Controle direto simples da camada de mídia
SFML: biblioteca multimídia rápida e simples
física
Box2D: mecanismo de física de jogo 2D.
Bullet: mecanismo de física de jogo 3D.
Chipmunk: biblioteca de física de jogos 2D rápida e leve
LiquidFun: mecanismo de física de jogo 2D
ODE: Open Dynamics Engine - uma biblioteca de código aberto e de alto desempenho para simular a dinâmica de corpos rígidos.
ofxBox2D: wrapper de estrutura de código aberto Box2D.
Simbody: Uma biblioteca C++ de dinâmica/física multicorpo de alto desempenho para simular biomecânica articular e sistemas mecânicos como veículos, robôs e esqueletos humanos.
Robótica
MOOS-Ivp: Um conjunto de módulos C++ de código aberto que fornecem autonomia para plataformas robóticas, especificamente veículos marítimos autônomos.
MRPT: Kit de ferramentas de programação de robôs móveis
PCL: Point Cloud Library é um projeto aberto independente e em grande escala para processamento de imagens 2D/3D e nuvem de pontos.
Biblioteca de Robótica: Uma biblioteca C++ independente que inclui dinâmica de robôs, planejamento e controle de movimento.
RobWork: Uma coleção de bibliotecas C++ para simulação e controle de sistemas robóticos.
ROS: Robot Operating System que fornece bibliotecas e ferramentas para ajudar desenvolvedores de software a criar aplicações robóticas.
computação científica
FFTW: Biblioteca em linguagem C para cálculo de DFT em uma ou mais dimensões.
GSL: Biblioteca Científica GNU.
roteiro
ChaiScript: Uma linguagem de script incorporada fácil de usar para C++.
Lua: Um mecanismo de script pequeno e rápido para arquivos de configuração e scripts básicos de aplicativos.
luacxx: API C++ 11 para criar ligações Lua
SWIG: Um gerador de wrapper/interface que permite que seu código C++ seja vinculado a JavaScript, Perl, PHP, Python, Tcl e Ruby
V7: mecanismo JavaScript incorporado.
V8: mecanismo JavaScript rápido do Google que pode ser incorporado em qualquer aplicativo C++.
serialização
Cap'n Proto: Formato rápido de troca de dados e sistema RPC.
cereal: biblioteca de serialização C++ 11
FlatBuffers: biblioteca de serialização com uso eficiente de memória
MessagePack: biblioteca de serialização binária eficiente para C/C++, como JSON
ProtoBuf: Buffer de protocolo, formato de troca de dados do Google.
ProtoBuf-c: Implementação de buffer de protocolo em linguagem C
SimpleBinaryEncoding: Codificação e decodificação de informações de aplicativos em formato binário para aplicativos de baixa latência.
Thrift: IPC/RPC multilíngue eficiente, usado em C++, Java, Python, PHP, C# e muitas outras linguagens, originalmente desenvolvidas pelo Facebook.
Videoteca
libvpx: SDK de codificação e decodificação VP8/VP9
FFMpeg: Uma solução completa e multiplataforma para gravação e conversão de fluxos de vídeo e áudio.
libde265: Implementação aberta do codec de vídeo h.265.
OpenH264: Codec H.364 de código aberto.
Theora: Formato de compressão de vídeo gratuito e de código aberto.
Biblioteca XML
Expat: biblioteca de análise xml escrita em linguagem C
LibXml2: analisador xml C e kit de ferramentas para Gnome
LibXml++: analisador xml para C++
PugiXML: Um analisador XML leve, simples e rápido para C++ que suporta XPath.
RapidXML: Tenta criar o analisador XML mais rápido, mantendo a facilidade de uso, portabilidade e compatibilidade W3C razoável.
TinyXML: Um analisador XML C++ simples e pequeno que pode ser facilmente integrado a outros projetos.
TinyXML2: Um analisador CML C++ simples e rápido que pode ser facilmente integrado a outros projetos.
TinyXML++: Uma interface completamente nova para TinyXML que aproveita muitas das vantagens do C++, modelos, exceções e melhor tratamento de exceções.
Xerces-C++: analisador de validação XML escrito em um subconjunto de C++ portátil.
Trabalho de colarinho zero
Fornecidas em tempo real, informações de recrutamento de empregos para c/c++ e golang em Pequim, Xangai, Guangzhou, Shenzhen, Hangzhou, Nanjing, Hefei, Wuhan, Changsha, Chongqing, Chengdu, Xi'an e Xiamen são divulgadas semanalmente. Incluindo recrutamento escolar, recrutamento social, vagas de estágio, entrevistas, estereótipos e currículos