元<類 F,整...I>
常式 動 切換啊(整 n,F&&f,序列<I...>){
((n==I&&(f(整常<整,I>()),0)),...);
//&&與(..,0)這樣就是a&&b,
//b為0的表達式,是以必須要有0,這裡反正能用就行
}
元<整 I,類 F>常式 動 切為編(整 n,F&f){
型名 造序<I>::型 p;中 切換啊(n,f,p);
};
#include <變量>
#include "運轉編.cpp"
構 啊{
極 要(){
中 真;
}
整 打(){
列印("啊");
中 3;
}
};
構 呀{
極 要(){
中 假;
}
整 打(){
列印("呀");
中 4;
}
};
用 T=變量<啊,呀>;
//用可變模闆是不行的
//主要是,一個下,與一個中,麻煩.
空 主(){//向量是同一類型的,元組是不同類型的
啊 a;呀 b;向量<T>過{a,b};整 i=0;極 要下=0;
常式 整 I=變量大小值<T>;
對(動&t:過){//i與過的順序要比對
切為編<I>(i,[&](動 i){//f取上下文
常式 整 N=推導(i)::值;靜 動 g=取<N>(t);
如(!g.要()){要下=1;中;}
g.打();
});
i++;如(要下)下;異 斷;
}//隻要一個.i給出類型,主要就是這個<下>
}//