Slide 65
Slide 65 text
コンパイル時整数シーケンス
導入の背景
65
タプルの各要素に関数を適用してタプルで返却する(再帰を
使った)例
template
std::enable_if_t> g_impl(F&& f, const std::tuple&, U&&... args) {
return std::make_tuple(f(std::forward(args))...);
}
template
std::enable_if_t> g_impl(F&& f, const std::tuple& t, U&&... args) {
return g_impl(std::forward(f), t, std::forward(args)..., std::get(t));
}
template
std::tuple g(F&& f, const std::tuple& t) {
return g_impl<0>(std::forward(f), t);
}
何とか頑張って再帰を使って関数パラメータパックに変換し
てから適用してみました。多分正しく動くと思うけどツラい…