Ответ довольно популярен в интернете.Я взял из std :: array в действии
Дано:
std::array<int, 8> arr{1, 2, 3, 4, 5, 6, 7, 8};
Или даже:
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8};
Использование for_each
иlambda
:
std::for_each(std::begin(arr), std::end(arr), [](int v){std::cout << v << " ";});
или даже:
// calculate the sum of the array by using a global variable
int sum = 0;
std::for_each(std::begin(arr), std::end(arr), [&sum](int v) { sum += v; });
std::cout << "sum of array{1,2,3,4,5,6,7,8}: " << sum << std::endl;
Обновлено
Использование std::begin()
и std::end()
вместо .begin()
и .end()
в соответствии с предложением @ NathanOliver.