元<元<类 B>类 G,类...T,类 A,整...I> 空 展开(序列,向量&b){ ((G ::动作(b[I])),...); }//要用两个括号 元<元<类 B>类 F,类...T,类 A> 空 展开(向量&b){ 断大小 (b); 展开 (转序 (),b); }//展开向量.先给出T,这样好推断一些.
下面是函数模板转类模板宏.可进一步,增强能力:
#define 单参构(S,H,T)
元<类 I>构 S{
静 常式 空 动作(T&e){H(e);}
};
//单参模板,转为构,S作为模板参数.
//H为函数,e为参数.
//这里是单参,还可根据需要继续扩展.
使用时:
单参构(加一构,加一,串);//先定义宏,转成
//这是函数模板转类模板.
元<类...T>空 加(向量<串>&b){
展开<加一构,T...>(b);
}//如何展开向量?
然后,外部,就可调用加函数了.
示例#include "向量针.cpp"
构 A{
串 呀;
~A(){}
};
构 B:公 A{};
构 C:公 A{};
构 D:公 A{};
空 主(){
向量<串>啊{"a","b","c","d"};
静 无映针d;
d.加(啊);
}



