Цикл на основе диапазона или for_each с политикой выполнения лучше?

Я читал об этих новых политиках выполнения в C ++ 17 на cppreference.com: https://en.cppreference.com/w/cpp/algorithm/execution_policy_tag_t

И мне было интересно, должны ли мы предпочесть те, что сейчас, а не циклы, основанные на диапазоне, если мы хотим позволить компилятору оптимизировать в меру своих возможностей? Я использую gcc, который еще не реализует их, поэтому я не могу его протестировать, но в будущем я бы предпочел это:

int a[] = {1,2};
std::for_each(std::execution::par_unseq, std::begin(a), std::end(a), [](int& p) {
++p;
});

Или это:

for(auto& p : a) {
++p;
}

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]