L'objectif de cette page est de constituer une liste exhaustive de bibliothèques C++ open-source, afin que lorsqu'on a besoin d'une implémentation d'une fonctionnalité particulière, on ne perde pas de temps à chercher sur le web (
DuckDuckGo
,
Google
,
Bing
, etc.)
Si vous connaissez une bibliothèque qui pourrait être utile à d'autres, veuillez ajouter un lien vers celle-ci ici. Il n'y a aucune restriction sur ce qui peut être inclus, sauf que les
sources
de la bibliothèque doivent être facilement
disponibles
au téléchargement.
Cette page est fournie "telle quelle" - avec l'espoir d'être utile, mais sans aucune garantie. Des liens obsolètes, trompeurs ou erronés peuvent apparaître ici. Si vous en avez remarqué un, ce serait formidable que vous corrigiez l'erreur.
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Amplitude Audio SDK
|
Un moteur audio multiplateforme conçu pour répondre aux besoins des jeux. (
Src
)
|
Apache-2.0
|
cmake, vcpkg
|
|
Aquila
|
Une bibliothèque DSP open-source et multiplateforme pour C++11.
|
MIT
|
cmake
|
|
Aubio
|
Une bibliothèque C/Python pour l'analyse audio et musicale. (
Src
)
|
GPL-3.0
|
make
|
|
audioFlux
|
Une bibliothèque C pour l'analyse audio et musicale, extraction de caractéristiques.
|
MIT
|
|
|
Essentia
|
Une bibliothèque et des outils open-source pour l'analyse, la description et la synthèse audio et musicale (MIR) (
Src
)
|
Affero GPLv3
|
|
|
FFTW
|
Une bibliothèque pour calculer la DFT (SSE/SSE2/AVX/Altivec/ARM Neon). (
Src
)
|
GPL-2.0
|
cmake
|
|
FMOD
|
Un moteur audio facile à utiliser multiplateforme et un outil de création de contenu audio pour les jeux.
|
Gratuit pour usage non commercial/Commercial
|
cmake
|
|
KFR
|
Un framework DSP/DFT rapide, moderne, C++17, open-source et multiplateforme, prend en charge le rééchantillonnage audio, les filtres FIR/IIR, Biquad (SSE, AVX, AVX-512, ARM NEON). (
Src
)
|
GPL-2.0
|
cmake
|
|
libsoundio
|
Une bibliothèque C pour l'entrée et la sortie audio en temps réel multiplateforme. (
Src
)
|
MIT
|
cmake
|
|
Maximilian
|
Bibliothèque DSP Audio et Musicale C++.
|
MIT
|
cmake
|
|
Miniaudio
|
Une bibliothèque C de lecture et capture audio. (
Src
)
|
Unlicense
|
fichier source unique
|
|
ni-media
|
Bibliothèque C++ pour lire et écrire des fichiers audio.
|
MIT
|
cmake, vcpkg
|
|
OpenAL
|
Une API audio multiplateforme.
|
BSD/LGPL/Propriétaire
|
cmake
|
|
PortAudio
|
PortAudio est une bibliothèque d'E/S audio gratuite, multiplateforme et open-source. (
Src
)
|
MIT
|
cmake, vcpkg
|
|
rnnoise
|
Réseau neuronal récurrent pour la réduction du bruit audio.
|
BSD-3-Clause
|
make
|
|
SELA
|
S
impl
E
L
ossless
A
udio.
|
MIT
|
cmake
|
|
SoLoud
|
Moteur audio facile et portable pour les jeux.
|
zlib
|
|
|
Soundtouch
|
SoundTouch est une bibliothèque de traitement audio open-source multiplateforme pour modifier le tempo, la hauteur et les taux de lecture des flux audio ou des fichiers audio. (
Src
)
|
LGPL-2.1
|
make
|
|
Tonic
|
Synthèse audio facile et efficace en C++.
|
Unlicense
|
|
|
Verovio
|
Une bibliothèque de gravure de notation musicale rapide et légère. (
Src
)
|
LGPL
|
cmake, qmake
|
|
Wav2Letter++
|
Une boîte à outils de reconnaissance vocale rapide écrite entièrement en C++ et utilisant la bibliothèque de tenseurs ArrayFire et la bibliothèque d'apprentissage automatique flashlight pour une efficacité maximale.
|
BSD License
|
cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
ACE
|
Réseautage asynchrone, démultiplexage d'événements, messagerie (
Src
) (
Doc
)
|
Personnalisée
|
make
|
|
Apache Thrift
|
Le framework logiciel Apache Thrift, pour le développement de services interlangages évolutifs, combine une pile logicielle avec un moteur de génération de code pour construire des services qui fonctionnent efficacement et de manière transparente entre C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml et Delphi et d'autres langages. (
Src
)
|
Apache-2.0
|
cmake, vcpkg
|
|
Boost.Asio
|
Réseautage asynchrone et synchrone, minuteries, E/S série
|
BSL-1.0
|
|
|
Boost.Beast
|
Une bibliothèque HTTP et WebSocket construite sur Boost.Asio
|
BSL-1.0
|
|
|
Breep
|
Une bibliothèque pair-à-pair de haut niveau basée sur les événements, permettant aux utilisateurs d'envoyer et de recevoir directement des objets.
|
Licence Publique de l'Union Européenne 1.1
|
cmake
|
|
brpc
|
Un framework RPC de qualité industrielle utilisé dans toute Baidu, avec plus de 1 000 000 d'instances et des milliers de types de services. (
Src
) (
Doc
)
|
Apache 2.0
|
cmake
|
|
C++ REST SDK
|
Un client HTTP asynchrone et un écouteur, Stream asynchrone, URI, JSON
|
MIT
|
cmake
|
|
cpp-httplib
|
Une bibliothèque HTTP/HTTPS multiplateforme C++11 à en-tête unique
|
MIT
|
header-only ; cmake
|
|
cpp-netlib
|
Une bibliothèque réseau C++
|
BSL-1.0
|
cmake
|
|
cppsimpleuri
|
Un analyseur d'URI et de requêtes moderne en C++
|
MIT
|
cmake
|
|
cpr
|
Une bibliothèque moderne de requêtes HTTP en C++
|
MIT
|
cmake
|
|
Crow
|
Un micro-framework web en C++ (inspiré par Python Flask)
|
BSD-3-Clause
|
header-only; cmake
|
|
curlpp
|
Enveloppe C++ pour libcURL (bibliothèque CURL). (
Src
)
|
|
cmake, vcpkg
|
|
DumaisLib
|
Divers utilitaires tels que serveur Web, JSON, serveur WebSocket, framework REST (une bibliothèque pour créer une API REST dans votre application C++)
|
MIT
|
make
|
|
EasyHttp
|
Une bibliothèque cliente HTTP multiplateforme axée sur la facilité d'utilisation et la vitesse, prenant en charge la mise en cache des réponses HTTP et plus encore.
|
MIT
|
cmake
|
|
eCAL
|
Une bibliothèque de communication inter-processus haute performance
|
Apache 2.0
|
cmake
|
|
fineftp-server
|
Une bibliothèque de serveur FTP pour Windows et Unix
|
MIT
|
cmake
|
|
FPNN
|
F
ast
P
rogrammable
N
exus
N
etwork. Cadre de service RPC entièrement asynchrone haute performance. Prend simultanément en charge HTTP, WebSocket, TCP et UDP fiable. Supporte le développement de serveurs à charge ultra-élevée, avec les SDK clients correspondants.
|
未知
|
make
|
|
gRPC
|
Un framework RPC moderne, open source et haute performance pouvant fonctionner dans n'importe quel environnement. (
Src
) (
Doc
)
|
Apache-2.0
|
bazel, cmake, vcpkg
|
|
gsoap
|
Une boîte à outils de développement C/C++ pour les liaisons de données XML, les services Web WSDL/SOAP/XML rapides, WS-Security, les services RESTful JSON/XML-RPC
|
GPLv2
|
|
|
hmbdc
|
Un middleware/framework de publication-souscription de messages C++17 léger et haute performance
|
|
header-only
|
|
HTTPP
|
Un serveur HTTP simple, prêt pour la production, basé sur C++14 et construit sur Boost, ainsi qu'un client construit sur libcurl.
|
BSD 2-Clauses "Simplifiée"
|
cmake, make
|
|
IXWebSocket
|
Une bibliothèque WebSocket + HTTP open-source sans dépendance, supportant SSL et l'extension WebSocket de compression par message.
|
BSD 3-Clause "New" or "Revised"
|
cmake, make
|
|
KCP
|
Un protocole ARQ rapide et fiable qui aide les applications à réduire la latence réseau.
|
MIT
|
cmake
|
|
libashttp
|
Une bibliothèque cliente HTTP asynchrone
|
Licence publique générale limitée GNU v3.0
|
|
|
libjson-rpc-cpp
|
Un framework qui fournit une prise en charge JSON-RPC (appel de procédure distante) multiplateforme pour C++, entièrement compatible JSON-RPC 2.0 & 1.0.
|
MIT
|
cmake, conan
|
|
libnavajo
|
Un framework C++ incluant un serveur http multithreadé rapide, HTML5 Websockets, SSL, authentification X509 et HTTP, compression, cookies et gestion avancée des sessions, IPv4 et IPv6 (CeCILL-C).
|
ACCORD DE LICENCE DE LOGICIEL LIBRE CeCILL-C
|
cmake
|
|
libtins
|
Une bibliothèque de création et de capture de paquets réseau (
Src
) (
Doc
)
|
BSD-2
|
cmake, vcpkg
|
|
LiteNetLibPP
|
Une bibliothèque UDP légère et fiable pour les jeux
|
MIT
|
cmake
|
|
mailio
|
Bibliothèque MIME et email
|
BSD 2-Clause "Simplified"
|
cmake
|
|
nanomsg
|
Une file d'attente de messages rapide, successeur de zeromq
|
|
|
|
netif
|
Une bibliothèque C++14 pour obtenir les adresses réseau sur Windows, Linux, macOS et FreeBSD.
|
BSD 3-Clauses "Nouvelle" ou "Révisée"
|
header-only ; cmake
|
|
nghttp2
|
Bibliothèque C HTTP/2 et outils (serveur, client, proxy et outils de benchmarking)
|
MIT
|
cmake, configure
|
|
ngrest
|
Un framework de services web RESTful JSON rapide et facile à utiliser
|
Apache 2.0
|
cmake
|
|
nng
|
Une file de messages rapide, successeur de nanomsg
|
|
|
|
Oat++
|
Un Framework Web : Implémentation REST-API et Requêtes (
Src
) (
Doc
)
|
Apache 2.0
|
cmake
|
|
omniORB
|
L'implémentation CORBA ORB en C++ la plus rapide, complète et portable
|
|
|
|
OpenDDS
|
Implémentation DDS (Data Distribution Service)
|
|
|
|
Paho MQTT
|
Un client C++ moderne pour MQTT d'Eclipse
|
|
cmake
|
|
paozhu
|
Un framework web C++20 prenant en charge HTTP/2, ORM et WebSocket
|
MIT
|
cmake
|
|
PcapPlusPlus
|
Cadriciel multi-plateforme C++ pour la capture réseau, l'analyse et la création de paquets. Fournit des encapsulations C++ pour de nombreux moteurs de traitement de paquets populaires tels que libpcap, Npcap, WinPcap, DPDK, AF_XDP et PF_RING. (
Src
)
|
Unlicense
|
conan, homebrew, cmake, vcpkg
|
|
POCO
|
Réseautage : chiffrement, HTTP ; Fichiers Zip (
Doc
)
|
|
|
|
rest_rpc
|
Un framework RPC C++11, haute performance, multiplateforme et facile à utiliser.
|
MIT
|
cmake
|
|
restbed
|
Un framework multiplateforme riche en fonctionnalités qui apporte une fonctionnalité RESTful asynchrone (communication sécurisée via HTTP) aux applications C++14.
|
Licence
|
cmake
|
|
restc-cpp
|
Accéder aux API JSON depuis C++. Client HTTP, sérialisation native C++ classe vers/depuis JSON, E/S asynchrones via les coroutines boost::asio. C++14.
|
MIT
|
cmake
|
|
restful_mapper
|
ORM pour consommer des API RESTful JSON en C++
|
|
cmake, make
|
|
seastar
|
Un framework d'application côté serveur haute performance, basé sur C++14/C++17.
|
Apache 2.0
|
cmake, etc.
|
|
Silicon
|
Le Framework Web Silicon C++14 : APIs Web Rapides et Robustes
|
MIT
|
cmake
|
|
sockpp
|
Une bibliothèque de sockets C++ simple et moderne
|
BSD 3-Clause "New" or "Revised"
|
cmake
|
|
stream-client
|
Un client léger basé sur Boost pour les sockets côté client / connecteur / pool de sockets / résolveur
|
Apache 2.0
|
header-only; cmake
|
|
tacopie
|
Une bibliothèque TCP C++11
|
MIT
|
cmake
|
|
TAO
|
CORBA
|
|
|
|
taox11
|
Une implémentation CORBA basée sur C++11
|
MIT
|
|
|
Unicomm
|
Réseautage asynchrone, framework de communication TCP de haut niveau
|
|
|
|
uvw
|
Un
libuv
(I/O asynchrone multiplateforme) wrapper en C++17
|
MIT
|
header-only; cmake
|
|
WNetWrap
|
Un wrapper WinInet en C++
|
MIT
|
|
|
wvstreams
|
Une bibliothèque de mise en réseau C++ incluant UniConf et une API D-Bus pratique
|
GPL
|
|
|
zeromq
|
Une file d'attente de messages rapide
|
|
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
AdaptiveCpp
|
Fournit un compilateur et un système d'exécution de déport de charge SYCL et C++ parallel STL pour les CPU et GPU de NVIDIA, AMD, Intel
|
BSD-2-Clause
|
cmake
|
|
Asyncpp
|
Une bibliothèque C++ asynchrone qui fournit diverses opérations concurrentes
|
MIT
|
cmake
|
|
BlockingCollection
|
Classe C++11 de file d'attente bloquante, pile et file de priorité thread-safe, multi-producteur et multi-consommateur
|
GPL-3.0
|
header-only
|
|
Boost.Atomic
|
Fournit des types de données atomiques et des opérations sur ces types de données, ainsi que des contraintes d'ordonnancement de la mémoire requises pour coordonner plusieurs threads via des variables atomiques.
|
BSL-1.0
|
|
|
Boost.Compute
|
Une bibliothèque de calcul GPU/parallèle pour C++ basée sur OpenCL.
|
BSL-1.0
|
cmake
|
|
Boost.Context
|
Une bibliothèque C++11 qui fournit une abstraction de multitâche coopératif sur un seul thread.
|
BSL-1.0
|
|
|
Boost.Interprocess
|
Simplifie l'utilisation des mécanismes de communication et de synchronisation interprocessus et offre une large gamme de ceux-ci : mémoire partagée, fichiers mappés en mémoire, sémaphores, mutex, variables condition et types de mutex améliorables, versions nommées des objets de synchronisation, verrouillage de fichiers, files de messages.
|
BSL-1.0
|
|
|
Boost.Lockfree
|
Fournit des structures de données concurrentes non bloquantes (également appelées lock-free) : une file d'attente, une pile et un tampon circulaire (spsc_queue).
|
BSL-1.0
|
|
|
Boost.MPI
|
Une interface conviviale en C++ pour le standard
Message Passing Interface
|
BSL-1.0
|
|
|
Boost.Thread
|
Permet l'utilisation de multiples threads d'exécution avec des données partagées et des moyens de synchroniser les données entre les threads.
|
BSL-1.0
|
|
|
concurrencpp
|
Concurrence moderne pour C++. Tâches, exécuteurs, minuteries et coroutines C++20.
|
MIT
|
cmake
|
|
dispenso
|
Concurrence haute performance pour C++. parallel_for, Futures, pipelines, minuteries, tâches temporisées/périodiques et structures de données concurrentes.
|
MIT
|
cmake
|
|
Highway
|
Fournit des intrinsèques SIMD/vectorielles portables en performance et agnostiques à la longueur. Prend en charge : SSE3, SSE4, AVX*, NEON, SVE*, WASM SIMD, RISC-V, POWER. (
Doc
)
|
Apache-2.0
|
cmake
|
|
HPX
|
Un système d'exécution C++ à usage général pour applications parallèles et distribuées de toute échelle (
Doc
)
|
BSL-1.0
|
cmake, vcpkg
|
|
Intel TBB
|
Intel® TBB est une bibliothèque C++ multiplateforme pour la programmation parallèle en mémoire partagée et le calcul hétérogène. La bibliothèque fournit : des algorithmes parallèles génériques, des conteneurs concurrents, un allocateur de mémoire évolutif, un ordonnanceur de tâches à vol de travail et des primitives de synchronisation de bas niveau. (
Src
) (
Doc
)
|
Apache-2.0
ou Commercial
|
cmake, make
|
|
KOKKOS
|
Un modèle de programmation pour écrire des applications HPC portables en performance, utilisant CUDA, HIP, SYCL, HPX, OpenMP et les threads C++ comme backends (
Doc
)
|
Personnalisé
|
cmake, make
|
|
libopenmpi
|
Le projet Open MPI est une implémentation open source de l'interface de passage de messages
|
3-clause BSD
|
|
|
libsimdpp
|
Une bibliothèque C++ SIMD bas niveau portable sans surcoût.
|
Boost
|
header-only; cmake
|
|
MPL
|
Une interface compatible C++-17 pour le standard
Message Passing Interface
|
BSD 3-Clauses "Nouvelle" ou "Révisée"
|
header-only ; cmake
|
|
MutexGear
|
Une bibliothèque de synchronisation C/C++ basée uniquement sur les mutex : roue, verrou de lecture-écriture, verrou de maintenance, files d'attente de travail
|
La Bibliothèque MutexGear
|
configure, msvc, make
|
|
OpenMP
|
La spécification de l'API OpenMP pour la programmation parallèle
|
|
|
|
PoCL
|
Une implémentation portable, reconfigurable et open-source (basée sur LLVM) de la norme OpenCL. (
Src
) (
Doc
)
|
MIT
|
cmake
|
|
RaftLib
|
Acteurs concurrents de type flux en C++17 permettant des calculs parallèles de flux de données
|
Apache-2.0
|
cmake
|
|
SObjectizer
|
Un petit framework multiplateforme pour applications concurrentes et événementielles en C++ utilisant les modèles acteur et publication-abonnement.
|
BSD-3-Clause
|
cmake, vcpkg, conan
|
|
stdgpu
|
Structures de données efficaces de type STL sur le GPU
|
Apache 2.0
|
cmake
|
|
subprocess
|
Bibliothèque multiplateforme C++17/20 pour exécuter des sous-processus
|
MIT
|
cmake, teaport
|
|
Taskflow
|
Programmation Parallèle de Tâches en C++ Moderne
|
TASKFLOW MIT
|
cmake
|
|
task-thread-pool
|
Pool de threads rapide et léger pour C++11 et versions ultérieures.
|
BSD-2-Clause ou MIT ou BSL-1.0
|
cmake, vcpkg, en-tête unique
|
|
ThreadPool
|
Un pool de threads simple et léger
|
BSD-3-Clause
|
header-only; cmake, make
|
|
thread_pool
|
Un pool de threads moderne, rapide et léger
|
MIT
|
cmake
|
|
Thrust
|
Algorithmes parallèles et structures de données de type STL basés sur CUDA, TBB ou OpenMP
|
Apache v2.0, Boost v1.0.
|
cmake
|
|
TimerAlarm
|
Minuteries et alarmes basées sur les threads.
|
BSD-3-Clause
|
header-only; cmake, make
|
|
VexCL
|
Une bibliothèque d'expressions vectorielles en C++ pour OpenCL, CUDA, OpenMP
|
MIT
|
cmake
|
|
ViennaCL
|
Algèbre linéaire et algorithmes avec backends OpenMP, CUDA et OpenCL. (
Src
) (
Doc
)
|
Personnalisé
|
cmake
|
|
Xenium
|
Une bibliothèque C++17 qui fournit diverses structures de données concurrentes et schémas de récupération.
|
MIT
|
header-only; cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Argh!
|
Un gestionnaire d'arguments minimaliste.
|
BSD 3-Clause
|
header-only; cmake, vcpkg
|
|
argparse (hbristow)
|
Une classe C++ légère pour l'analyse des arguments de ligne de commande, avec une interface similaire à la classe Python du même nom.
|
BSD
|
|
|
argparse (morrisfranken)
|
Une bibliothèque légère pour analyser les arguments de ligne de commande de manière élégante.
|
Apache 2
|
header-only; cmake
|
|
argparse (p-ranav)
|
Un analyseur d'arguments de ligne de commande pour C++17
|
MIT
|
header-only; cmake, vcpkg
|
|
args
|
Une bibliothèque simple d'analyse d'arguments en C++.
|
MIT
|
header-only; cmake, conan, meson, vcpkg
|
|
Boost.Program_options
|
Cette bibliothèque permet d'obtenir les options du programme, c'est-à-dire des paires (nom, valeur) de l'utilisateur, via des méthodes conventionnelles telles que la ligne de commande, le fichier de configuration et les variables d'environnement.
|
BSL-1.0
|
|
|
CLI11
|
Un analyseur de ligne de commande C++11 qui offre un ensemble de fonctionnalités riche avec une interface simple et intuitive.
|
BSD-3-Clause
|
header-only; cmake, meson, vcpkg
|
|
clipp
|
Analyse d'arguments puissante et expressive pour le C++ moderne.
|
MIT
|
header-only; cmake, vcpkg
|
|
cmd_line_parser
|
Analyseur de ligne de commande pour C++17.
|
MIT
|
header-only; cmake
|
|
cmdlime
|
Une bibliothèque C++17 pour l'analyse de ligne de commande qui fournit une interface concise et déclarative avec prise en charge des sous-commandes, des validateurs et la possibilité de choisir le format d'options de ligne de commande GNU, POSIX ou X11.
|
MS-PL
|
cmake
|
|
cxxopts
|
Un analyseur d'arguments de ligne de commande léger pour C++11/C++17, prenant en charge la syntaxe standard de style GNU pour les options.
|
MIT
|
header-only; bazel, cmake
|
|
fire-hpp
|
Créer des interfaces en ligne de commande entièrement fonctionnelles en utilisant des signatures de fonctions.
|
BSL-1.0
|
header-only; cmake
|
|
flags
|
Analyseur d'arguments C++17 simple et extensible.
|
Unlicense
|
header-only; cmake
|
|
gflags
|
Une bibliothèque qui implémente le traitement des drapeaux de ligne de commande. Elle inclut une prise en charge intégrée des types standards tels que string et la capacité de définir des drapeaux dans le fichier source où ils sont utilisés.
|
BSD
|
cmake
|
|
structopt
|
Analyser les arguments de ligne de commande en définissant une structure.
|
MIT
|
header-only; cmake
|
|
tclap
|
Une bibliothèque de modèles C++ simple pour analyser les arguments de ligne de commande. La bibliothèque fournit une interface orientée objet simple et flexible.
|
MIT
|
cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
ArduinoJson
|
Bibliothèque JSON C++98/11/14/17 pour Arduino, IoT et C++ embarqué
|
MIT
|
cmake
|
|
Boost.JSON
|
L'analyse, la sérialisation et le DOM JSON en C++11/17
|
BSL-1.0
|
|
|
cajun-jsonapi
|
Une API C++ pour JSON mettant l'accent sur une interface intuitive et concise qui imite le C++ standard autant que possible.
|
|
make
|
|
DAW JSON Link
|
Une bibliothèque C++17 fournissant des liaisons statiques C++ avec vérification de types permettant l'analyse syntaxique directe vers les structures de données utilisateur sans allocation de bibliothèque, modes push/pull, support d'allocateur, constexpr
|
BSL 1.0
|
cmake
|
|
Glaze
|
L'une des bibliothèques JSON les plus rapides (C++23) avec sérialisation directe en mémoire. Prend également en charge BEVE et CSV.
|
MIT
|
cmake, conan, build2, vcpkg
|
|
jansson
|
Une bibliothèque C pour encoder, décoder et manipuler des données JSON avec support UTF-8
|
MIT
|
cmake, make
|
|
jeayeson
|
Une bibliothèque JSON C++14 très rationnelle
|
BSD-3
|
header-only
|
|
jios
|
Flux d'Entrée-Sortie JSON
|
MIT
|
cmake
|
|
JOST
|
|
|
|
**Note:** Le texte à traduire dans ce fragment HTML est uniquement "JOST". Cependant, comme il s'agit d'un nom propre (probablement un acronyme ou un nom de projet) et qu'il n'y a pas d'autres éléments textuels à traduire, la traduction n'est pas nécessaire. Le code HTML reste inchangé.
|
json
|
JSON de Niels Lohmann pour C++11, avec une syntaxe intuitive
|
MIT
|
header-only ; bazel, cmake, meson
|
|
Jsonifier
|
Quelques classes C++20 pour l'analyse et la sérialisation JSON extrêmement rapides
|
MIT
|
cmake
|
|
JSON Voorhees
|
JSON tueur pour C++11 (
Doc
)
|
Apache-2.0
|
cmake
|
|
JSON++
|
|
|
|
**Note:** Le texte "JSON++" n'a pas été traduit car il s'agit d'un terme spécifique au C++ (nom de bibliothèque). Aucune autre traduction n'était nécessaire dans ce fragment HTML car il ne contenait que des balises HTML, des attributs et un terme technique C++.
|
json11
|
Une petite bibliothèque JSON pour C++11, fournissant l'analyse et la sérialisation JSON.
|
MIT
|
cmake
|
|
JsonBox
|
Une bibliothèque C++ utilisée pour lire et écrire JSON avec facilité et rapidité.
|
MIT
|
cmake
|
|
jsoncons
|
Une bibliothèque pour les formats de données JSON et similaires à JSON, avec JSON Pointer, JSON Patch, JSONPath, CSV, MessagePack, CBOR, BSON, UBJSON.
|
Personnalisée
|
header-only
|
|
jsoncpp
|
Une bibliothèque permettant de manipuler des valeurs JSON, incluant la sérialisation et la désérialisation, tout en préservant les commentaires.
|
MIT
|
cmake, conan, vcpkg
|
|
libjson
|
|
|
|
|
minijson
|
Une analyse et sérialisation JSON en C++ sans DOM et sans allocation mémoire
|
Personnalisée
|
cmake
|
|
Neyson
|
Léger Une bibliothèque JSON C++11
|
BSD-3-Clause
|
cmake
|
|
nosjob
|
Une bibliothèque C++98 pour générer et consommer des données JSON
|
MIT
|
make
|
|
qjson
|
|
|
|
|
rapidjson
|
Un analyseur/générateur JSON rapide pour C++ avec API de style SAX/DOM, prend en charge UTF-8/16/32, utilise optionnellement SIMD. (
Doc
)
|
Personnalisée
|
header-only ; cmake, vcpkg
|
|
simdjson
|
Analyser des gigaoctets de JSON par seconde en tirant parti des micro-architectures modernes et de la parallélisation avec SIMD (
Doc
) (
Vidéo
)
|
Apache-2.0
|
cmake, vcpkg
|
|
struct_mapping
|
Mappe JSON vers et depuis une structure C++
|
MIT
|
cmake
|
|
swxJson
|
La bibliothèque C++ JSON la plus pratique actuellement en usage. Lisez et écrivez des structures complexes à n'importe quel niveau avec un seul appel de fonction. Les performances sont approximativement la moitié de celles de RapidJSON.
|
MIT
|
make
|
|
ThorsSerializer
|
Flux d'Entrée-Sortie JSON/BSON/YAML
|
MIT
|
make
|
|
ujson
|
µjson est une petite bibliothèque JSON C++11 UTF-8
|
cmake
|
|
|
yyjson
|
Une bibliothèque JSON haute performance écrite en C ANSI
|
MIT
|
cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Boost.Bimap
|
Une bibliothèque de cartes bidirectionnelles qui propose des conteneurs associatifs tels que
bimap<X,Y>
dans lesquels à la fois
X
et
Y
peuvent être utilisés comme clé. (
Src
)
|
BSL-1.0
|
|
|
Boost.Container
|
Une bibliothèque qui implémente plusieurs conteneurs bien connus, incluant des conteneurs similaires à la bibliothèque standard, ainsi que des conteneurs récursifs, et de nouveaux conteneurs utiles :
flat_map
,
flat_set
,
flat_multimap
,
flat_multiset
,
stable_vector
,
static_vector
,
small_vector
,
devector
. (
Src
)
|
BSL-1.0
|
header-only
|
|
Boost.Fusion
|
Une bibliothèque pour travailler avec des collections hétérogènes de
tuples
. Fournit un ensemble de conteneurs (
vector
,
list
,
set
et
map
), ainsi qu'une présentation transformée de leurs données sous-jacentes, également appelée
views
." (
Src
)
|
BSL-1.0
|
|
|
Boost.Heap
|
Une implémentation de
files de priorité
avec plus de fonctionnalités et des caractéristiques de performance différentes que la bibliothèque standard. (
Src
)
|
BSL-1.0
|
|
|
Boost.Pointer Container
|
Fournit des conteneurs pour stocker
des objets alloués sur le tas
de manière sûre face aux exceptions et avec une surcharge minimale. (
Src
)
|
BSL-1.0
|
|
|
Boost.Tuple
|
Implémente le n-
tuple
pré-C++11 (une collection de taille fixe d'éléments) (
Src
)
|
BSL-1.0
|
|
|
Boost.Variant
|
Implémente le
variant
pré-C++17 (un conteneur
union
discriminé, sûr, générique et basé sur la pile) (
Src
)
|
BSL-1.0
|
|
|
C++ Allocators
|
Allocateurs conformes à la bibliothèque standard pour mémoire statique de taille fixe et basée sur la pile + un autre allocateur conforme permettant l'allocation personnalisée de limites
|
BSD-3-Clause
|
cmake, make
|
|
cpp-btree
|
Les conteneurs B-tree utilisent mieux le cache du processeur :
btree_map
,
btree_set
,
btree_multimap
,
btree_multiset
. (
Src
)
|
Apache-2.0
|
header-only ; cmake
|
|
DataFrame
|
DataFrame C++ pour l'analyse statistique, financière et ML -- en C++ moderne utilisant des types natifs et un stockage mémoire continu
|
BSD-3-Clause
|
cmake, make, conan, vcpkg
|
|
eggs::variant
|
Eggs.Variant est une union discriminée générique, type-safe pour C++11/14/17. Il est particulièrement remarquable pour son excellente prise en charge
constexpr
.
|
BSL-1.0
|
cmake
|
|
Frozen
|
C++14
constexpr
ensembles immuables, cartes et algorithmes basés sur le hachage parfait.
|
Apache-2.0
|
header-only; cmake
|
|
Immer
|
Une bibliothèque de structures de données persistantes et immuables
|
Boost
|
cmake
|
|
plf::colony
|
Conteneur non ordonné de type "sac" qui surpasse les conteneurs
std::
dans les scénarios à forte modification tout en maintenant des pointeurs valides vers les éléments non effacés malgré les insertions et suppressions. Compatible C++98/11/14/etc. Voir aussi
P0447
(
std::hive
). (
Source
)
|
zlib
|
conan
build2
|
|
plf::list
|
Une implémentation de
std::list
qui sacrifie le splicing de plages pour une meilleure utilisation du cache, offrant des insertions, suppressions et itérations plus rapides. Compatible C++98/03/11/14/17/20/23/26/etc. (
Src
) (
Doc
)
|
zlib
|
—
|
|
plf::reorderase
|
Une extension et optimisation de l'idiome "swap-and-pop"/"move-and-pop" pour les conteneurs à accès aléatoire afin d'améliorer les performances d'effacement des conteneurs à accès aléatoire, lorsque l'ordre post-effacement n'est pas important. Couvre les effacements simples, par plage et de style
std::erase_if
. Compatible C++98/11/14/etc. (
Source
)
|
zlib
|
|
|
plf::queue
|
Un conteneur de remplacement direct pour
std::queue
avec de meilleures performances que
std::deque
et
std::list
dans un contexte de file d'attente. Compatible C++98/11/14/etc. (
Src
)
|
zlib
|
|
|
plf::stack
|
Un conteneur de remplacement direct pour
std::stack
avec de meilleures performances que
std::vector
et
std::deque
dans un contexte de pile. Compatible C++98/11/14/etc. (
Src
)
|
zlib
|
|
|
ring_span
|
Une implémentation légère du
ring_span
d'Arthur O'Dwyer, également appelée vue de tampon circulaire. Compatible C++98.
|
BSL-1.0
|
header-only ; cmake
|
|
strict_variant
|
Un variant adapté au temps réel/embarqué (c'est-à-dire compatible avec
-fno-exceptions
/
-fno-rtti
), jamais vide ciblant C++11. Rapide, empêche de nombreuses conversions implicites indésirables.
|
BSL-1.0
|
cmake
|
|
tiny::optional
|
Un remplacement pour
std::optional
qui permet l'utilisation de valeurs sentinelles pour éliminer la surcharge mémoire.
|
BSL-1.0
|
cmake
|
|
Ygg
|
Une implémentation intrusive C++11 de conteneurs et structures de données haute performance tels qu'un
arbre rouge-noir
, un
arbre d'intervalles
et une carte d'intervalles.
|
MIT
|
header-only; cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Boost::MySQL
|
Bibliothèque cliente MySQL
|
BSL-1.0
|
|
|
cpp-redis
|
Client Redis léger C++11 : asynchrone, thread-safe, sans dépendance, pipelining, multi-plateforme. (
Doc
)
|
MIT
|
cmake
|
|
DTL
|
Rend les ensembles d'enregistrements ODBC similaires à un conteneur STL (
Src
) (
Doc
)
|
|
|
|
EasyQtSql
|
Une bibliothèque légère C++11 (basée sur Qt) pour l'interrogation SQL rapide et facile
|
MIT
|
header-only; qmake
|
|
Galera
|
Le Galera Cluster est la bibliothèque de réplication multi-maître synchrone (Galera) et une API Write Set Replication (WSREP) pour MySQL/MariaDB (
Src
)
|
GPLv2
|
cmake, scons
|
|
LevelDB
|
Une bibliothèque C++ développée par Google qui gère le stockage persistant de données clé-valeur à l'échelle du milliard. (
Doc
)
|
BSD-3
|
cmake
|
|
libpqxx
|
Le connecteur C++ pour PostgreSQL (
Src
)
|
BSD-3
|
cmake, make
|
|
lmdb++
|
Enveloppe C++11 pour la bibliothèque de base de données embarquée LMDB à arbre B+.
|
Unlicense
|
make
|
|
mongocxx
|
Une bibliothèque de pilote officielle C++11 pour MongoDB (
Doc
). Elle propose des API optimisées pour les opérations CRUD, l'indexation et l'agrégation. Prenant en charge BSON et incluant le regroupement de connexions et les mécanismes d'authentification, elle offre des solutions hautes performances et évolutives pour développer des applications C++ exploitant MongoDB.
|
Apache 2.0
|
cmake
|
|
mysql++
|
Base de données MySQL et outils
|
|
|
|
nanodbc
|
Un wrapper C++14 petit, multiplateforme pour l'API ODBC C native
|
MIT
|
cmake
|
|
ODB
|
Un système ORM (Object-Relational Mapping) open-source, multiplateforme et multi-base de données pour C++. ODB prend en charge les bases de données relationnelles MySQL, SQLite, PostgreSQL, Oracle et Microsoft SQL Server ainsi que les standards de langage C++98/03 et C++11.
|
GPL2 et/ou NCUEL
|
|
|
OTL
|
Une bibliothèque de base de données basée sur des templates C++ pour Oracle DB, ODBC et DB2-CLI. (
Src
)
|
|
|
|
Pgfe
|
L'API client PostgreSQL (FrontEnd) en C++ moderne
|
Zlib
|
cmake
|
|
QTL
|
Une bibliothèque de base de données C++ conviviale et légère pour MySQL, SQLite et ODBC.
|
Apache-2.0
|
make
|
|
QUINCE
|
QU
eries
IN
C
++
E
xpressions (ORM+EDSL)
|
Boost
|
|
Traduction en français :
|
QUINCE
|
QU
eries
IN
C
++
E
xpressions (ORM+EDSL)
|
Boost
|
|
**Note** : Le texte ne contient aucun contenu à traduire en dehors des balises HTML et des termes C++ qui doivent être préservés. La structure HTML et tous les termes techniques (QUINCE, ORM, EDSL, Boost) restent inchangés conformément aux instructions.
|
QxOrm
|
Une bibliothèque de base de données
O
bjet
R
elationnel
M
apping (ORM) pour C++/Qt, prend en charge la plupart des bases de données courantes, la sérialisation (JSON, binaire, XML) ; serveur web HTTP autonome multi-thread
|
GPLv3 ou Propriétaire
|
|
|
redis-cpp
|
Une bibliothèque cliente légère en C++17 pour exécuter des commandes Redis.
|
MIT
|
header-only; cmake
|
|
redis-plus-plus
|
Un client Redis écrit en C++ 11, prenant en charge Redis Sentinel, Redis Cluster, le pipeline, les transactions, pubsub, le pool de connexions et une interface de type STL
|
Apache-2.0
|
cmake
|
|
SOCI
|
Une bibliothèque de bases de données basée sur des plugins qui intègre des requêtes SQL dans du code C++ standard ; les backends pris en charge incluent : DB2, Firebird, MySQL, ODBC (backend générique), Oracle, PostgreSQL, SQLite3. (
Src
) (
Doc
)
|
Boost
|
cmake
|
|
SQLAPI++
|
Une bibliothèque middleware C++ pour bases de données qui prend en charge plusieurs systèmes de bases de données SQL : Oracle, SQL Server, DB2, Sybase, MySQL, PostgreSQL, SQLite, Informix, InterBase / Firebird, SQLBase, SQL Anywhere, ODBC, MariaDB. (
Src
) (
Doc
)
|
Personnalisée
|
make
|
|
SQLiteCPP
|
Un wrapper C++ SQLite3 léger et facile à utiliser.
|
MIT
|
cmake, meson, vcpkg
|
|
SQLite ORM
|
Un
L
angage
D
édié
S
pécifique
E
mbarqué (EDSL) pour SQL, tel que compris par SQLite, pour C++ moderne.
|
AGPL-3.0, MIT
|
header-only ; cmake, vcpkg
|
|
sqlpp11
|
Un langage spécifique au domaine intégré de type sûr pour les requêtes et résultats SQL en C++.
|
BSD-2
|
cmake
|
|
taoPQ
|
Une bibliothèque cliente PostgreSQL C++17 légère
|
Boost
|
cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Abseil
|
Une collection open-source de code de bibliothèque C++ de Google conçue pour compléter la bibliothèque standard C++. (
Doc
) (
Src
)
|
Apache-2.0
|
cmake
|
|
Conteneurs Intrusifs Abstraits
|
Plus flexible que
Boost.Intrusive
, mais non compatible STL.
|
|
|
|
Au
|
Une bibliothèque d'unités physiques compatible C++14 sans dépendances, mettant l'accent sur la sécurité, l'accessibilité et les performances. (
Doc
)
|
Apache 2.0
|
header-only
|
|
BDE
|
Les bibliothèques principales de l'environnement de développement Bloomberg de Bloomberg L.P.
|
Apache
|
|
|
Better Enums
|
Énumérations réflexives (enum vers chaîne, itération, etc.) avec support constexpr.
|
BSD-2
|
header-only, cmake, make
|
|
bitfield.h
|
Structure de champs de bits, plus portable/flexible que la fonctionnalité de base du langage.
|
|
|
|
Boost
|
Une grande collection de bibliothèques génériques
|
BSL-1.0
|
|
|
CAF
|
Le C++ Actor Framework (CAF) est une implémentation open-source du modèle d'acteurs en C++11 proposant des implémentations d'acteurs légères et rapides, le filtrage par motif pour les messages, la messagerie transparente au réseau, et plus encore
|
BSD
|
|
|
Cinder
|
Une bibliothèque communautaire, gratuite et open-source pour la programmation créative de qualité professionnelle en C++. (
Doc
) (
Src
)
|
Modified BSD
|
cmake
|
|
CommonPP
|
Une bibliothèque polyvalente mettant particulièrement l'accent sur l'extraction de métriques d'un projet.
|
BSD
|
|
|
composite_op.h
|
Introspection basique des membres de données de classe, fastidieuse et souvent non réentrante, mais parfois utile.
|
|
|
|
cpp-mmf
|
Une bibliothèque C++98 qui encapsule les fichiers mappés en mémoire pour POSIX ou Windows
|
|
|
|
cxxomfort
|
Rétroportages de fonctionnalités C++ (de C++11 vers C++03 et propositions C++1y vers C++11/C++03).
|
|
|
|
Dlib
|
Réseaux, threads, interfaces graphiques, structures de données, algèbre linéaire, apprentissage automatique, analyse XML et texte, optimisation numérique, réseaux bayésiens, et de nombreuses autres tâches
|
Boost
|
|
|
eventpp
|
Une bibliothèque d'événements C++ pour les rappels, le répartiteur d'événements et la file d'attente d'événements. Avec eventpp, vous pouvez facilement implémenter le mécanisme de signal et slot, le modèle éditeur et abonné, ou le modèle observateur.
|
Apache 2.0
|
|
|
fcppt
|
Freundlich's C++ Toolkit (fcppt) est une collection de bibliothèques axée sur l'amélioration du code C++ général en fournissant de meilleurs types et en utilisant la programmation fonctionnelle.
|
|
|
|
Folly
|
Bibliothèque open-source de Facebook. Une bibliothèque multiplateforme de composants C++14 conçue en pensant à la praticité et à l'efficacité. (
Doc
)
|
Apache-2.0
|
cmake, vcpkg
|
|
GSL
|
Implémentation de la bibliothèque de support des
G
uides de base
S
pour le
L
angage C++, recommandée par Bjarne Stroustrup, Herb Sutter et collaborateurs dans les
C++ Core Guidelines
|
MIT
|
cmake, vcpkg
|
|
gsl-lite
|
Une version de la bibliothèque de support des directives ISO C++ (GSL) pour C++98, C++11 et ultérieur
|
MIT
|
header-only
|
|
GUL14
|
Bibliothèque utilitaire générale pour C++14 de
DESY
: Fonctions et types utilitaires fréquemment utilisés, incluant les utilitaires de chaînes, les fonctions statistiques et numériques, les conteneurs, les moyens de débogage, etc. (
Src
)
|
LGPL-2.1
|
meson, vcpkg
|
|
History
|
Framework Annuler/Rétablir C++17 Moderne
|
Unlicense
|
|
|
hspp
|
Une bibliothèque expérimentale pour apporter la programmation de style Haskell au C++.
|
Apache-2.0
|
header-only
|
|
IP-DOS (tm)
|
IdeaFarm (tm) Piggyback Distributed Operating System : Un environnement de programmation généraliste pour le langage C++.
|
Open Source Propriétaire
|
Open Watcom 2.0
|
|
JUCE
|
Une boîte à outils C++ multiplateforme complète et éprouvée
|
GPL
|
|
|
Kangaru
|
Un conteneur d'injection de dépendances pour C++11 et C++14
|
MIT
|
|
|
Kerbal
|
Rétroportages des fonctionnalités modernes de la STL vers les standards précédents. Plus de fonctionnalités ! Plus de constexpr !
|
LGPL-3.0
|
header-only ; cmake
|
|
libsourcey
|
Une bibliothèque C++14 multiplateforme pour le réseau haute vitesse et l'encodage multimédia. HTTP, WebSockets, TURN, STUN, Symple et plus.
|
LGPL-2.1
|
cmake
|
|
LLNL/units
|
Une bibliothèque C++ d'exécution pour manipuler les unités de mesure et les conversions entre elles, ainsi que les représentations textuelles des unités et des mesures
|
BSD 3-Clause "New" or "Revised"
|
cmake
|
|
Loki
|
Une bibliothèque C++ de conceptions, contenant des implémentations flexibles de modèles de conception et d'idiomes courants.
|
MIT
|
make
|
|
match(it)
|
Une bibliothèque légère de pattern matching pour C++17 avec des API sans macros.
|
Apache-2.0
|
header-only
|
|
nonstd-lite
|
Une liste de dépôts *-lite (par exemple,
span-lite
,
scope-lite
,
expected-lite
) contenant des implémentations C++98/11 de certains types de bibliothèque C++17/20/23 proposés ou déjà standardisés, tels que
std::span
,
std::expected
etc).
|
BSL-1.0
|
header-only
|
|
nytl
|
Une bibliothèque de modèles utilitaires générique en C++17.
|
BSL-1.0
|
header-only
|
|
OnPosix
|
Bibliothèque C++ fournissant plusieurs abstractions (par exemple, threading, networking, logging, IPC, etc.) sur les plateformes POSIX.
|
|
|
|
Reason
|
XML, xpath, regex, threads, sockets, HTTP, SQL, date-time, streams, encoding and decoding, filesystem, compression
|
GPL
|
|
|
SaferCPlusPlus
|
Des substituts compatibles sûrs pour les primitives non sécurisées du C++, incluant les pointeurs,
int
et
std::vector
.
|
Boost
|
|
|
Smart Enum
|
to_string
,
from_string
et plus pour vos énumérations.
|
BSL-1.0
|
cmake
|
|
units
|
Une bibliothèque d'analyse dimensionnelle et de conversion d'unités à la compilation, construite sur C++14 sans dépendances
|
MIT
|
header-only
|
|
yaal
|
Y
et
A
nother
A
bstraction
L
ayer - algorithmes, collections, calcul en précision arbitraire, analyseurs syntaxiques pilotés par grammaire DSL générique et plus encore
|
CC BY-ND-NC 4.0
|
cmake
|
|
Yato
|
Une bibliothèque moderne C++(14/17) multiplateforme de style STL et compatible STL implémentant des conteneurs, des gammes, des itérateurs, des traits de type et d'autres outils ; système d'acteurs ; interface de configuration type-safe.
|
Apache-2.0
|
cmake
|
|
yomm2
|
Des multi-méthodes ouvertes pour C++17
|
Boost
|
|
|
zoolib
|
ZooLib est une boîte à outils C++ riche en fonctionnalités.
|
MIT
|
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Brisk
|
Framework GUI modulaire C++20 multiplateforme, avec capacités réactives et rendu évolutif accéléré par GPU. (
Src
), (
Doc
)
|
GPL2+/Propriétaire
|
cmake, vcpkg
|
|
Dear ImGui
|
Une bibliothèque GUI légère pour C++ avec des dépendances minimales, portable, indépendante du rendu, optimisée pour une utilisation dans des applications compatibles pipeline 3D.
|
MIT
|
vcpkg
|
|
FLTK
|
Une boîte à outils GUI C++ multiplateforme (Linux, Windows, MacOS) offrant des fonctionnalités GUI modernes et prenant en charge les graphiques 3D via OpenGL/GLUT. Conçue pour être petite et modulaire. Inclut un constructeur d'interface.
|
LGPL ver.2
|
|
|
nana
|
Programmation GUI multiplateforme dans un style C++ moderne. (
Src
), (
Doc
)
|
BSL-1.0
|
cmake, vcpkg
|
|
nanogui
|
Une bibliothèque de widgets minimaliste multiplateforme pour OpenGL 3.x ou supérieur (
Doc
)
|
|
|
|
OWLNext
|
Mise à jour moderne d'
OWL
pour écrire des applications GUI en C++ standard sous Windows
|
|
|
|
Slint
|
Une boîte à outils GUI déclarative pour créer des interfaces utilisateur natives pour bureau, embarqué et microcontrôleurs. (
Src
), (
Doc
)
|
GPL 3,
Sans redevance
, ou Commercial
|
cmake
|
|
tiny file dialogs
|
Un ensemble de boîtes de dialogue de fichiers multiplateforme C/C++ (pas d'initialisation, pas de boucle principale, 6 appels de fonctions modales)
|
|
header-only
|
|
U++
|
Un framework de développement rapide d'applications multiplateforme (Windows, GNU/Linux, macOS) avec EDI intégré. Compatible C++17. (
Doc
) (
Src
)
|
BSD-3-Clause
|
make
|
|
WxWidgets
|
Un framework C++ multiplateforme (Windows, GNU/Linux, macOS) libre et open-source pour écrire des applications GUI avancées utilisant des contrôles natifs. (
Doc
)
|
LGPL modifiée
|
cmake, make
|
|
xtd
|
Un framework C++17/20 moderne pour créer des applications console, GUI et de tests unitaires sur Windows, macOS, Linux, iOS et Android. (
Src
) (
Doc
)
|
MIT
|
cmake
|
La traduction du texte "U++" en français reste "U++" car il s'agit d'un nom propre/produit spécifique qui ne se traduit pas. La structure HTML est conservée intacte conformément aux instructions.
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
bgfx
|
Une bibliothèque puissante et multiplateforme (Windows, Mac, Linux, iOS, Android, Web) de rendu graphique 2D/3D prenant en charge les shaders, avec des moteurs de rendu : DX, OpenGL, Metal, WebGL, Vulkan, etc. (
Doc
)
|
BSD-2
|
make
|
|
cairomm
|
Un wrapper C++ pour la
bibliothèque graphique cairo
, une bibliothèque 2D prenant en charge plusieurs périphériques de sortie : X Window, Quartz, Win32, tampons d'image, PostScript, PDF, SVG, OpenGL (expérimental).
|
LGPL
|
|
|
dfpsr
|
Un moteur de rendu logiciel 2D, 3D et isométrique avec une boîte à outils d'interface graphique de bureau, des dépendances minimalistes, conçu pour une maintenance à long terme et pouvant fonctionner sans pilotes accélérés 3D
|
zlib
|
|
|
gegl
|
Ge
nérique
G
raphics
L
ibrary (GEGL) est un framework de traitement d'image basé sur le flux de données, offrant un traitement en virgule flottante et des capacités de traitement d'image non destructif. (
Src
)
|
LGPL
|
|
|
io2d
|
Une implémentation de référence de
P0267
, l'API graphique 2D proposée pour
ISO C++
|
BSL-1.0
|
cmake
|
|
nanovg
|
Une bibliothèque de dessin vectoriel 2D antialiassé en C sur OpenGL pour les interfaces utilisateur et visualisations, avec des ports vers DX11/Metal/bgfx.
|
zlib
|
|
|
nux
|
Une boîte à outils OpenGL
|
LGPL v3
|
|
|
pangomm
|
L'interface C++ officielle pour la bibliothèque de disposition de polices
Pango
. (
Src
)
|
LGPL v2.1
|
make
|
|
Skia
|
Une bibliothèque graphique 2D open-source écrite en C++.
Skia Graphics Engine
est utilisée dans Google Chrome, Chrome OS, Mozilla Firefox, Android, LibreOffice, Flutter, etc.
Skia
possède plusieurs moteurs : rastérisation logicielle, sortie (PDF), OpenGL, SVG, etc.
|
New BSD
|
|
|
TXLib
|
TX Library est une petite bibliothèque graphique 2D pour Win32 écrite en C++.
|
|
|
|
ULIS
|
Une bibliothèque C++14 multiplateforme pour le traitement générique d'images numériques, rastériseur logiciel 2D, formats d'image illimités (
u8
,
u16
,
u32
,
float
,
double
), Disposition mémoire personnalisée par ordre des bits, Tous les modes de fusion de pixels Photoshop + 11 modes supplémentaires, Modèles de couleur (RGB, HSL, HSV, CMYK, ...), Pipelines gérées en couleur, Prise en charge des espaces colorimétriques (profils icm et indépendants du périphérique), Algorithmes optimisés avec multithreading, Algorithmes optimisés avec extensions SIMD (SSE2), Pools d'images et caches pour optimisations, Stockage en mémoire de séquences d'images animées.
|
Personnalisée (gratuite uniquement pour un usage non commercial)
|
cmake
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
assimp
|
Chargement de modèles 3D
|
BSD-3
|
cmake, vcpkg
|
|
bgfx
|
Une bibliothèque de rendu multiplateforme, indépendante de l'API graphique, de style "Bring Your Own Engine/Framework".
|
BSD-2
|
make, vcpkg
|
|
Diligent Engine
|
Une bibliothèque graphique 3D moderne, multiplateforme et bas niveau.
|
Apache-2.0
|
cmake
|
|
Epoxy
|
Un successeur moderne de GLEW. Abstrait les différences entre certains types de contextes GL, ce qui le rend parfois plus simple à utiliser que GLEW. Utilisé par le projet GTK+ depuis 2015.
|
MIT
|
meson, vcpkg
|
|
G3D
|
Le G3D Innovation Engine est un moteur de jeu 3D open-source, multiplateforme (Windows, Linux, Mac OS) et complet, écrit en C/C++. G3D est utilisé dans des jeux commerciaux, des articles de recherche, des simulateurs et des cours universitaires. Il prend en charge le rendu matériel en temps réel et hors ligne, le lancer de rayons, le chargement de modèles, l'algèbre linéaire et le calcul GP sur les GPU. Prend en charge les formats 3DS, OBJ, MP4, PNG, JPG, MD3 et bien d'autres, inclut une interface graphique native OpenGL personnalisable. (
Src
) (
Doc
)
|
BSD-2
|
|
|
GLAD
|
Une bibliothèque personnalisable et légère pour charger les fonctions OpenGL
|
|
|
|
GLEW
|
Un chargeur de fonctions OpenGL (
Src
)
|
EXTGL/BSD/MIT
|
make, vcpkg
|
|
GLFW
|
Un gestionnaire de fenêtres OpenGL (
Src
) (
Doc
)
|
zlib/libpng
|
cmake, vcpkg
|
|
GLM
|
L'Open
GL
M
athematics (GLM) est une bibliothèque mathématique C++ pour les logiciels graphiques basée sur la spécification
GLSL
.
|
The Happy Bunny /
MIT
|
header-only; cmake, vcpkg
|
|
Godot
|
Un moteur de jeu multiplateforme complet 2D et 3D en C++17 avec un éditeur GUI écrit sur lui-même et un langage de script inspiré de Python.
|
MIT
|
scons
|
|
hlsl++
|
Une bibliothèque mathématique C++ pour le rendu utilisant la syntaxe HLSL. Prend en charge SSE et NEON
|
MIT
|
header-only
|
|
Horde3D
|
Un petit moteur de rendu 3D open-source. Il est développé dans le but de créer un moteur graphique offrant les effets visuels époustouflants attendus dans les jeux de nouvelle génération, tout en étant léger et aussi épuré que possible.
|
EPL
|
|
|
Irrlicht
|
Le moteur Irrlicht est un moteur 3D temps réel open-source écrit en C++. Il est multiplateforme, utilisant D3D, OpenGL et ses propres moteurs de rendu logiciel.
|
zlib/libpng
|
make, vcpkg
|
|
klein
|
Une bibliothèque C++11/14/17 optimisée SSE pour l'algèbre géométrique projective destinée aux graphismes et à l'animation
|
MIT
|
cmake, vcpkg
|
|
Magnum
|
Un middleware graphique C++11/C++14 léger et modulaire pour les jeux et la visualisation de données (
Src
)
|
Personnalisée
|
cmake
|
|
O3DE
|
Le
O
pen-source
3D
E
ngine (anciennement Amazon's Lumberyard) est un moteur 3D multi-plateforme C++ pour créer des jeux AAA, des mondes 3D de qualité cinéma et des simulations haute fidélité. Inclut la simulation physique, le moteur de script, la mise en réseau et
plus
. (
Doc
)
|
Apache 2.0
|
cmake
|
|
Ogre3D
|
OGRE est un moteur de rendu graphique orienté objet - une bibliothèque de visualisation polyvalente, adaptée à la visualisation scientifique, aux jeux, à la simulation, à la réalité virtuelle et à d'autres projets graphiques. Il est multiplateforme et très robuste, avec une bonne documentation.
|
MIT
|
cmake, vcpkg
|
|
Open CASCADE
|
SDK pour applications 3D CAD/CAM/CAE (
Src
)
|
LGPL-2.1
|
cmake
|
|
OpenGL
|
Langage 3D, graphismes et SDK pour développer des applications 3D.
|
Khronos (MIT)
|
|
|
OpenSceneGraph
|
OpenSceneGraph est une boîte à outils graphique 3D open-source haute performance, utilisée par les développeurs d'applications dans des domaines tels que la simulation visuelle, les jeux, la réalité virtuelle, la visualisation scientifique et la modélisation. (
Src
) (
Doc
)
|
Personnalisée,
GNU LGPL
|
cmake, vcpkg
|
|
Visionaray
|
Une bibliothèque de templates C++ pour le lancer de rayons.
|
MIT
|
cmake
|
|
VTK
|
Visualization Toolkit (VTK) est un logiciel open-source pour manipuler et afficher des données scientifiques. Il est livré avec des outils de pointe pour le rendu 3D, une suite de widgets pour l'interaction 3D, et des capacités étendues de traçage 2D.
|
BSD-3
|
cmake, vcpkg
|
|
Vulkan
|
Une API bas niveau qui supprime de nombreuses abstractions présentes dans les API graphiques de la génération précédente. C'est excellent pour offrir des performances maximales, mais a pour effet secondaire d'exposer plus de complexité au développeur. Heureusement, plusieurs excellents tutoriels existent pour aider à franchir cet obstacle et devenir productif rapidement.
|
Khronos (MIT)
|
make, vcpkg
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Adobe/boost GIL
|
Une bibliothèque générique de haut niveau, axée sur les algorithmes qui opèrent sur des images 2D. Options d'E/S très limitées.
|
BSL-1.0
|
|
|
agge
|
Anti-Grain Evolution. Un moteur graphique 2D pour la vitesse et la qualité en C++
|
MIT
|
cmake
|
|
FreeImage
|
Un projet de bibliothèque open-source pour les développeurs souhaitant prendre en charge les formats d'image graphique populaires comme PNG, BMP, JPEG, TIFF et autres
|
GPLv2, GPLv3, FIPL
|
|
|
FreeImageRe
|
Un fork de la bibliothèque open-source FreeImage v3.18 pour supporter les mises à jour des codecs d'image et ajuster pour une utilisation confortable. Tous les formats et plugins originaux sont maintenus.
|
GPLv2, GPLv3, FIPL
|
cmake
|
|
GraphicsMagick
|
Lecture, écriture et manipulation d'images dans plus de 88 formats majeurs. Forké d'ImageMagick en 2002
|
Copyright
|
Mercurial
|
|
SAIL
|
Lecture et écriture d'images statiques, animées, multi-pages avec leurs métadonnées et profils ICC. Capacités de conversion. Cible la simplicité et la vitesse.
|
MIT
|
cmake
|
|
stb
|
Un ensemble de bibliothèques orientées développement de jeux en C/C++ comprenant chargeur/écriveur/redimensionneur d'images, rastériseur de texte de police, conteneurs type-safe, décodeur ogg vorbis, compresseur DXT en temps réel, générateur de bruit de Perlin, lexer pour DSLs personnels, sprintf rapide, et plus.
|
MIT,
Personnalisée
|
header-only
|
|
ThorVG
|
Thor Vector Graphics est une bibliothèque portable légère utilisée pour dessiner des scènes et animations vectorielles incluant SVG et Lottie. Elle peut être librement utilisée sur diverses plateformes logicielles et applications pour visualiser des contenus graphiques. (
Source
)
|
MIT
|
conan, meson, msys2, vcpkg
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Backward
|
Impression de traces de pile élégantes de style Python avec couleurs et extraits de code source, particulièrement lors des plantages.
|
MIT
|
header-only; cmake, conan
|
|
Boost.Log
|
Une bibliothèque de journalisation multiplateforme simple d'utilisation, extensible et performante.
|
BSL-1.0
|
|
|
clutchlog
|
Système de journalisation en en-tête unique ciblant le DÉBOGAGE polyvalent plutôt que le stockage d'événements de service.
|
BSD
|
cmake
|
|
cpptrace
|
Bibliothèque de traces de pile simple, portable et autonome pour C++11 et versions ultérieures. Inclut des traces de pile sûres pour les signaux, des traces de pile sur exceptions, des extraits de code source, etc.
|
MIT
|
cmake, conan, vcpkg
|
|
glog
|
Bibliothèque de journalisation Google pour C++98 basée sur les flux de style C++
|
Licence
|
bazel, cmake, vcpkg
|
|
libassert
|
Bibliothèque d'assertions complète pour C++ fournissant des diagnostics de haute qualité pour les échecs d'assertion.
|
MIT
|
cmake, conan, vcpkg
|
|
Log4cplus
|
API de journalisation multiplateforme C++17 (modélisée d'après l'API Java log4j) offrant un contrôle thread-safe, flexible et arbitrairement granulaire sur la gestion et la configuration des journaux.
|
BSD (deux clauses) ou Apache 2.0
|
Autotools, cmake, Visual Studio
|
|
Log4cpp
|
Une bibliothèque de classes C++ pour une journalisation flexible vers des fichiers, syslog, IDSA et autres destinations.
|
LGPL
|
|
|
log4cxx
|
Apache log4cxx est un framework de journalisation pour C++ calqué sur Apache log4j. (
Src
)
|
Apache
|
cmake
|
|
lwlog
|
Une bibliothèque de journalisation C++17 synchrone et asynchrone extrêmement rapide
|
MIT
|
cmake
|
|
Pantheios
|
Une bibliothèque API de journalisation diagnostique, offrant une combinaison de sûreté de type, efficacité, généricité et extensibilité
|
style BSD
|
|
|
plog
|
Un journal portable et simple pour C++ en moins de 1000 lignes de code
|
MPL-2.0
|
|
|
Quill
|
Une bibliothèque de journalisation asynchrone
à faible latence
C++14 multiplateforme
|
MIT
|
cmake
|
|
spdlog
|
Une bibliothèque de journalisation C++ super rapide
|
MIT
|
header-only; cmake, conan
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
alglib
|
ALGLIB est une bibliothèque multiplateforme (Windows/POSIX/Linux) d'analyse numérique et de traitement de données. Les fonctionnalités d'ALGLIB incluent : Analyse de données, Optimisation et solveurs non linéaires, Interpolation, Algèbre linéaire et solveurs linéaires, FFT et bien d'autres.
|
Gratuit (GPL/Personnel/Académique) et Commercial
|
|
|
ArrayFire
|
Une bibliothèque HPC (CPU/GPU/OpenCL/CUDA/GPGPU) multiplateforme (Windows/OSX/Linux) à usage général pour le calcul parallèle. Les domaines d'ArrayFire sont : Algorithmes vectoriels, Traitement d'image, Vision par ordinateur, Traitement du signal, Algèbre linéaire, Statistiques, et plus. (
Src
)
|
Personnalisée
|
|
|
Boost.Math
|
Inclut plusieurs contributions dans le domaine des mathématiques : Utilitaires de nombres à virgule flottante, Constantes mathématiques, Distributions et fonctions statistiques, Statistiques, Fonctionnelles vectorielles - Normes, Fonctions spéciales, Algorithmes de recherche de racines et de minimisation, Polynômes et fonctions rationnelles, Interpolation, Quadrature et différenciation, Filtres, Fonctions de nombres complexes, Quaternions, Octonions, Utilitaires entiers (Plus grand commun diviseur et Plus petit commun multiple), Séries, Rationnels et fractions continues.
|
BSL-1.0
|
|
|
Boost.Random
|
Fournit une variété de générateurs et de distributions pour produire des nombres aléatoires ayant des propriétés utiles, telles que la distribution uniforme.
|
BSL-1.0
|
|
|
Boost.SafeNumerics
|
C++14, Arithmétique entière garantie correcte, un remplacement direct des types entiers intégrés.
|
BSL-1.0
|
header-only
|
|
cpp-measures
|
Une bibliothèque C++11 pour gérer les mesures physiques
|
MPL-2.0
|
header-only
|
|
G+Smo
|
Une bibliothèque multiplateforme pour l'analyse isogéométrique (
Doc
)
|
MPL-2.0
|
cmake
|
|
GNU MP bignum C++ interface
|
Une interface de classe C++ pratique qui offre des fonctions et opérateurs surchargés. Le
GMP
est une bibliothèque C libre pour l'arithmétique en précision arbitraire, opérant sur des entiers signés, des nombres rationnels et à virgule flottante.
|
GNU LGPL v3 et GNU GPL v2
|
|
|
libmpdec++
|
Une bibliothèque C multiplateforme (avec wrappers C++) pour l'arithmétique décimale en virgule flottante en précision arbitraire correctement arrondie.
|
BSD-2-Clause
|
make, nmake
|
|
NTL
|
Une bibliothèque pour faire de la théorie des nombres. NTL est une bibliothèque C++ portable et haute performance fournissant des structures de données et des algorithmes pour manipuler des entiers signés de longueur arbitraire, et pour les vecteurs, matrices et polynômes sur les entiers et sur les corps finis.
|
LGPLv2.1+
|
|
|
PCGrand
|
PCG est une famille d'algorithmes simples, rapides, efficaces en espace et statistiquement bons pour la génération de nombres aléatoires. Contrairement à de nombreux GNA à usage général, ils sont également difficiles à prédire.
|
Apache
|
|
|
stats++
|
Logiciel statistique avancé et complet : collecte et prétraitement des données, statistiques, apprentissage automatique et optimisation, avec code source C++ ouvert.
|
|
|
|
StatsLib
|
Une bibliothèque de modèles de fonctions de distribution statistique.
|
Apache-2.0
|
header-only
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Armadillo
|
Une bibliothèque de modèles C++ pour l'algèbre linéaire et le calcul scientifique proposant des wrappers pour OpenBLAS, Intel MKL, LAPACK, ATLAS, ARPACK, SuperLU et FFTW. Utile pour le ML, la reconnaissance de formes, le DSP, la bioinformatique, les statistiques, la finance, etc.
|
Apache 2.0
|
|
|
Blasw
|
Un wrapper C++11 pour BLAS et des parties de LAPACK
|
BSD-3-Clause
|
header-only ; cmake
|
|
Blaze
|
|
|
|
|
Blitz++
|
Une bibliothèque de classes modèles C++ fournissant des tableaux et vecteurs denses hautes performances, des générateurs de nombres aléatoires et des petits vecteurs.
|
GPL-3.0, LGPL-3.0, Personnalisée
|
cmake
|
|
Boost.uBLAS
|
Une bibliothèque de classes modèles C++ fournissant les fonctionnalités BLAS niveaux 1, 2, 3 pour les matrices denses, compactées et creuses. Utilise des templates d'expressions.
|
BSL-1.0
|
|
|
C++ Matrix
|
Bibliothèque de calcul matriciel haute performance et précise (ex: cas limites) avec opérateurs arithmétiques à templates d'expressions
|
BSD-3-Clause
|
cmake, make
|
|
DecompLib
|
Une bibliothèque C++11 pour décomposer un vecteur en un ensemble de vecteurs de base définis positifs pondérés.
|
MIT
|
header-only
|
|
Dlib - outils d'algèbre linéaire
|
|
|
|
|
Eigen
|
Une bibliothèque de modèles C++ pour l'algèbre linéaire : matrices, vecteurs, solveurs numériques et algorithmes associés.
|
MPL2
|
cmake, conan
|
|
ETL
|
|
|
|
|
IT++
|
|
|
|
|
Matrix
|
Bibliothèque de calcul scientifique facile à utiliser en/pour C++ disponible pour Linux et Windows.
|
MIT
|
cmake
|
|
NumCpp
|
Une bibliothèque de modèles C++ implémentant NumPy de Python
|
MIT
|
header-only ; cmake, vcpkg, conan
|
|
PETSc
|
Une suite de structures de données et routines pour la résolution parallèle d'applications scientifiques modélisées par des équations aux dérivées partielles. Prend en charge MPI, et les GPU via CUDA ou OpenCL, ainsi que les hybrides MPI-GPU.
|
|
|
|
Spectra
|
Sp
ectrale
E
igenvalue
C
omputation
T
oolkit as a
R
edesigned
A
RPACK est une bibliothèque C++ open-source pour les problèmes de valeurs propres à grande échelle, construite sur la bibliothèque d'algèbre linéaire
Eigen
(également open-source et header-only). (
Src
)
|
MPL-2.0
|
header-only ; cmake, vcpkg
|
|
Tense
|
Une bibliothèque rapide C++17 de matrices et tenseurs à templates d'expressions
|
BSD-3-Clause
|
header-only ; cmake
|
|
xtensor
|
Une bibliothèque C++ destinée à l'analyse numérique avec des expressions de tableaux multidimensionnels.
|
BSD
|
|
|
Bibliothèque
|
Description
|
Licence
|
Configuration
|
|
Boost.CallableTraits
|
Une bibliothèque C++11/17 pour l'inspection et la manipulation à la compilation de tous les types 'callable'. Successeur de Boost.FunctionTypes.
|
BSL-1.0
|
header-only
|
|
Boost.Hana
|
Une nouvelle bibliothèque de métaprogrammation pour les types et les valeurs
|
BSL-1.0
|
|
|
Boost.Metaparse
|
Une bibliothèque d'analyse syntaxique à la compilation, produisant des types, des valeurs et des métafonctions à partir de chaînes de compilation
|
BSL-1.0
|
|
|
Boost.Mp11
|
Une bibliothèque de métaprogrammation C++11 pour la manipulation à la compilation de structures de données contenant des types.
|
BSL-1.0
|
header-only
|
|
Boost.MPL
|
Une bibliothèque originale de métaprogrammation, ciblant C++03, lente
|
BSL-1.0
|
|
|
Boost.PFR
|
Une bibliothèque C++14 pour la réflexion basique (sans macros) : visite des membres d'un type défini par l'utilisateur par index, flux d'E/S.
|
BSL-1.0
|
header-only
|
|
Boost.Proto
|
Une bibliothèque pour construire des EDSLs basés sur des modèles d'expression
|
BSL-1.0
|
|
|
Brigand
|
Utilise des métafonctions eager, optimisées pour les meilleures performances
|
|
|
|
CoMeta
|
Une bibliothèque de métaprogrammation C++14 légère
|
|
header-only
|
|
Meta
|
Utilise des métafonctions eager, compromis entre metal et brigand en termes de performances
|
|
|
|
Metal
|
Utilise des métafonctions eager, 100% compatible SFINAE
|
|
|
|
refl-cpp
|
Une bibliothèque de réflexion moderne à la compilation pour C++ avec support des surcharges, templates, attributs et proxies
|
|
|
|
Refureku
|
Une bibliothèque de réflexion à l'exécution et de génération de code C++17
|
MIT
|
cmake
|
|
visit_struct
|
Une bibliothèque de réflexion miniature, fournissant des visiteurs de structure pour C++11/14. Autonome, 200-400 lignes de code selon le décompte.
|
|
|