Следует ли мне использовать std :: for_each?

Я всегда пытаюсь узнать больше о языках, которые я использую (разные стили, структуры, шаблоны и т. Д.). Я заметил, что никогда не использую std :: for_each , поэтому подумал, что, возможно, мне стоит начать. В таких случаях цель состоит в том, чтобы расширить свой кругозор, а не , а не в некоторой степени улучшить код (читаемость, выразительность, компактность и т. Д.).

Поэтому, имея в виду этот контекст, неплохо было бы используйте std :: for_each для простых задач, таких как, скажем, распечатка вектора:

for_each(v.begin(), v.end(), [](int n) { cout << n << endl; }

([] (int n) является лямбда-функцией). Вместо:

for(int i=0; i

Надеюсь, этот вопрос не кажется бессмысленным. Я предполагаю, что это почти задает более крупный вопрос ... должен ли программист среднего уровня использовать языковую функцию, даже если ему действительно не нужно в на этот раз , а просто для того, чтобы он мог лучше понять эту функцию на время это может действительно принести большую пользу. Хотя этот более крупный вопрос, вероятно, уже задавался (например, здесь ).

42
задан Community 23 May 2017 в 12:34
поделиться