- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
namespace detail
{
template <typename Function, typename Tuple, std::size_t... i>
void applyForEach(Function&& f, Tuple&& t, std::index_sequence<i...>)
{
(static_cast<void>(std::invoke(f, std::integral_constant<std::size_t, i>{}, std::get<i>(t))), ...);
}
} // namespace detail
template <typename Function, typename Tuple>
void applyForEach(Tuple&& tuple, Function&& function)
{
using Indexes = std::make_index_sequence<std::tuple_size_v<Tuple>>;
detail::applyForEach(std::forward<Function>(function), std::forward<Tuple>(tuple), Indexes{});
}
Строка 6. Мы тут сделали синтаксис для fold expression, только вам его не дадим: у вас документов нет.
Clang: https://wandbox.org/permlink/lNOFu1sOV9bA2LJF
GCC: https://wandbox.org/permlink/yqeiYHTgZOz9NkkJ
Elvenfighter 07.08.2019 23:44 # +1
Ну или так:
guest8 07.08.2019 23:53 # −999
eszett 06.11.2019 17:36 # 0
npocmou_xyu 08.08.2019 00:03 # −2
Elvenfighter 08.08.2019 02:33 # 0
npocmou_xyu 08.08.2019 03:04 # −1
PACTPOBblu_nemyx 08.08.2019 03:18 # −1
http://ideone.com/GQLIfb
guest8 08.08.2019 02:44 # −999