Linq: Poderosa Biblioteca de Processamento de Listas para C++ Moderno
Resumo
Neste artigo explico como usar linq para processar dados. Com esta biblioteca você pode usar filtragem, seleções, agregações, agrupamentos e muito mais. Para suporte completo requer clang ou gcc, e boost.
Como usar
Esta é uma biblioteca Header only. Basta integrar o header C++ no seu ambiente de projeto. Feito isso, você pode usar as funções linq.
Select
std::vector<int> v = { 1, 2, 4 };
// forma linq
auto q = LINQ(from(x, v) select(x * 3));
// q -> resultado {3,6,12}
// forma extension
auto r = v | linq::select([](int x) { return x * 3; });
OrderBy
std::vector<int> v = { 4, 2, 8 };
// forma linq
auto q = LINQ(from(x, v) orderby(descending x) select(x));
// q -> resultado {8,4,2}
Where
vector<int> v = { 1, 3, 4, 5 };
auto q = LINQ(from(i, v) where(i % 2));
// q -> resultado {4}
// forma extension
auto r = v | linq::where([](int x){ return x % 2}) | linq::select([](int x) { return x; });
Mais Informações
Se tem interesse em mais informações sobre linq, confira:
- GitHub: https://github.com/pfultz2/Linq
- Website: https://pfultz2.github.io/Linq/
Licença
A biblioteca é publicada sob Boost Software License 1.0.
Tecnologia industrial
- Blockchain é a Solução Ideal para Gestão da Cadeia de Suprimentos?
- Construindo a Independência da Cadeia de Suprimentos dos EUA: Lições da COVID-19
- A Oportunidade da COVID-19: Fortalecendo a Manufatura dos EUA para Resiliência
- Fábricas Se Tornarão Totalmente Automatizadas? Examinando a Mudança Longe de Trabalhadores Humanos
- Por que Revitalizar a Manufatura dos EUA é Essencial para Empregos e Sustentabilidade
- Fortalecendo a Segurança da Cadeia de Suprimentos nas Festas: Melhores Práticas e Insights
- Comércio em Tempo Real: Essencial para o Sucesso nas Festas de 2021
- 15 Tipos de Empilhadeiras Explicados: Guia Completo
- Ética da Automação: Navegando no Desafio Contínuo por um Futuro Responsável
- 7 Princípios Essenciais para Desempenho Máximo em Usinagem