每一元组操作.

<型名 F,型名 T,大小型...I>
内联 常式 动 每一(T&&t,F&&f,序列<I...>){
    中 元组{(f(<I>(t)))...};
}//这是每一元组,f,为对每一元组中项应用的函数,仔细观察<型名 F,型名 T>
内联 常式 动 每一(T&&t,F&&f){//每一,t为元组
    常式 整 N=元组大小<退化型<T>>::;
    型名 造序<N>::型 p;中 每一(前向<T>(t),f,p);
}//把上两句合为一,造引序为标准库里面的

示例:

#include <常用>
构 啊{
    整 打(){
        打印("啊");3;
    }
};
构 呀{
    整 打(){
        打印("呀");4;
    }
};

空 主(){
    啊 a;呀 b;
    元组 t{a,b};
    打印(元大小(t));
    动 g=每一(t,[](&p){中 p.();});
    打印(g);
}

posted @ 2020-05-12 14:30  zjh6  阅读(18)  评论(0)    收藏  举报  来源