Uma biblioteca TypeScript para criar aplicações prontas para produção, com erros tipados, injeção de dependência, concorrência estruturada e validação de schemas.
abseil/abseil-cpp
Abseil é uma coleção de bibliotecas C++17 do Google que amplia a biblioteca padrão com utilitários para contêineres, strings, tempo, logging e sincronização.
- Estrelas
- 18,169
- Forks
- 3,186
- Issues abertas
- 306
- Último commit
- há 39 minutos
O que é?
Abseil é uma coleção open source de bibliotecas C++ compatíveis com C++17 que amplia a biblioteca padrão da linguagem. O código vem da própria base de código C++ do Google e é usado no trabalho diário da empresa. Em algumas áreas, preenche lacunas que a biblioteca padrão não cobre; em outras, oferece alternativas ajustadas às necessidades de uso em larga escala.
A biblioteca é organizada em componentes como base, containers (incluindo contêineres hash Swiss-table), status (absl::Status e absl::StatusOr<T>), strings, time, logging (macros LOG e CHECK), flags, hashing, random e primitivas de sincronização, como absl::Mutex. Cada componente fica em seu próprio diretório em absl/, permitindo que os desenvolvedores dependam apenas das partes de que precisam.
Abseil pode ser compilado com Bazel ou CMake e segue a política de suporte a C++ do Google para compiladores e plataformas. O projeto recomenda acompanhar a branch master e também publica versões de suporte de longo prazo, que recebem correções retroportadas para bugs graves.
Recursos principais
- 01Contêineres, incluindo contêineres hash Swiss-table
- 02absl::Status e absl::StatusOr<T> para tratamento de erros
- 03Utilitários para strings, tratamento de horários e fusos horários e geração de números aleatórios
- 04Macros de logging LOG e CHECK e sincronização com absl::Mutex
- 05Componentes modulares que podem ser usados de forma independente
- 06Compilação com Bazel ou CMake
Casos de uso
- Adicionar tratamento de erros baseado em status a uma base de código C++ de grande porte
- Usar contêineres hash Swiss-table em código sensível a desempenho
- Substituir std::mutex por absl::Mutex em serviços concorrentes
- Analisar e formatar horários em diferentes fusos horários em aplicações C++
Em coleções
Tópicos
Perguntas frequentes
- O que é abseil-cpp?
- Abseil é uma coleção de bibliotecas C++17 do Google que amplia a biblioteca padrão com utilitários para contêineres, strings, tempo, logging e sincronização. Abseil é uma coleção open source de bibliotecas C++ compatíveis com C++17 que amplia a biblioteca padrão da linguagem. O código vem da própria base de código C++ do Google e é usado no trabalho diário da empresa. Em algumas áreas, preenche lacunas que a biblioteca padrão não cobre; em outras, oferece alternativas ajustadas às necessidades de uso em larga escala.
- abseil-cpp é gratuito? Qual é a licença?
- abseil-cpp é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- abseil-cpp ainda é mantido?
- Manutenção ativa. O último commit de abseil-cpp foi em 25 de out. de 2026.
- Para que posso usar abseil-cpp?
- Adicionar tratamento de erros baseado em status a uma base de código C++ de grande porte Usar contêineres hash Swiss-table em código sensível a desempenho Substituir std::mutex por absl::Mutex em serviços concorrentes Analisar e formatar horários em diferentes fusos horários em aplicações C++
- Onde consigo abseil-cpp?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/abseil/abseil-cpp
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma biblioteca de cache rápida, concorrente e limitada por memória para Go, com remoção baseada em custo e admissão TinyLFU.
Biblioteca C++ header-only de mapas hash, conjuntos e contêineres B-tree rápidos e econômicos em memória, que substituem os contêineres padrão da STL.
Logger universal para TypeScript e JavaScript, com saída de terminal formatada, JSON estruturado com campos primeiro, mascaramento de segredos e nenhuma dependência em tempo de execução.
Biblioteca utilitária Go com mais de 700 funções auxiliares reutilizáveis para strings, slices, data e hora, redes, criptografia e muito mais, inspirada no lodash.
Um auxiliar de depuração para Python em que ic() substitui print() e exibe nomes de variáveis, expressões e seus valores em uma saída formatada e com realce de sintaxe.