C ++ Builder 10.4 Sydney suporta o padrão ISO C ++ 17 nos compiladores baseados em Clang para Win32 e Win64 . Parte do padrão C ++ 17 inclui a biblioteca de algoritmos que fornece políticas de execução para suportar operações paralelas. Abaixo você encontrará um exemplo simples de VCL que usa o C ++ std :: vector e a biblioteca de algoritmos sort e política de execução paralela para classificar inteiros aleatórios no vetor. Atualmente, este exemplo é compilado usando os compiladores básicos do Clang para Windows de 32 e 64 bits.
Meu formulário VCL contém um TButton, TLabel e dois componentes TMemo.
O manipulador de eventos ao clicar no botão contém o código simples para criar o vetor, classificá-lo e exibir os resultados.
#include <algorithm>
[crayon-6723a826442aa232293257/]
Se quiser incluir código para compiladores não Clang e Clang, você pode usar as seguintes #if, #elif, #else, #endif diretivas de pré-processador em seus aplicativos
[crayon-6723a826442b5102791923/]
Referências C ++ 17 usadas neste exemplo simples:
std :: vector
C ++ Containers library std :: vector
Definido no cabeçalho <vector>
https://en.cppreference.com/w/cpp/container/vector
Biblioteca de algoritmos
A biblioteca de algoritmos adiciona funcionalidade além da biblioteca C ++ padrão. Esta biblioteca define funções adicionais para pesquisa, amostragem, classificação, contagem, manipulação, soma generalizada e muito mais.
Definido no cabeçalho <algorithm>
https://en.cppreference.com/w/cpp/algorithm
Classificar algoritmo
https://en.cppreference.com/w/cpp/algorithm/sort
Políticas de execução de algoritmo
https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag
Tipos de política de execução de algoritmo
https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag_t