C ++ Builder 10.4 Sydney поддерживает стандарт ISO C ++ 17 в компиляторах на основе Clang для Win32 и Win64 . Часть стандарта C ++ 17 включает библиотеку алгоритмов, которая предоставляет политики выполнения для поддержки параллельных операций. Ниже вы найдете простой пример VCL, который использует C ++ std :: vector и политику сортировки библиотеки алгоритмов и параллельного выполнения для сортировки случайных целых чисел в векторе. В настоящее время этот пример компилируется с использованием базовых компиляторов Clang для 32- и 64-битной Windows.
Моя форма VCL содержит компоненты TButton, TLabel и два TMemo.
Обработчик событий при нажатии кнопки содержит простой код для создания вектора, его сортировки и отображения результатов.
#include <algorithm>
[crayon-6763b89830d1b438361045/]
Если вы хотите включить код для компиляторов, отличных от Clang и Clang, вы можете использовать в своих приложениях следующие директивы препроцессора #if, #elif, #else, #endif..
[crayon-6763b89830d24648867958/]
Ссылки на C ++ 17, используемые в этом простом примере:
std :: vector
Библиотека контейнеров C ++ std :: vector
Определена в заголовке <vector>
https://en.cppreference.com/w/cpp/container/vector
Библиотека алгоритмов
Библиотека алгоритмов расширяет функциональность стандартной библиотеки C ++. Эта библиотека определяет дополнительные функции для поиска, выборки, сортировки, подсчета, манипулирования, обобщенного суммирования и многого другого.
Определено в заголовке <algorithm>
https://en.cppreference.com/w/cpp/algorithm
Алгоритм сортировки
https://en.cppreference.com/w/cpp/algorithm/sort
Политики выполнения алгоритма
https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag
Типы политик выполнения алгоритмов
https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag_t