元<型名 T,型名 N>动 正交(元组<T>&t,元组<N>&n){
    中 元组<双<T,N>>();
}
元<型名 T,型名 M,型名...N>动 正交(元组<T>&t,元组<M,N...>&n){
    元组<M>m;动 k=正交(t,m);元组<N...>r;
    中 连接元组(k,正交(t,r));
}
元<型名 T,型名...M,型名...N>动 正交(元组<T,M...>&t,元组<N...>&n){
    元组<T>m;动 k=正交(m,n);元组<M...>r;
    中 连接元组(k,正交(r,n));
}
元<型名 T>整 元大小(T&t){
    中 元组大小<T>();
}
元<型名 T>串 类名(T&t){
    中 具型(T).名字();
}
空 主(){
    元组<整,双精>a;元组<极,双精,整>b;
    动 t=正交(a,b);
    打印(元大小(t),类名(t));
}

输出:

6,class std::tuple<struct std::pair<int,bool>,struct std::pair<int,double>,struct std::pair<int,int>,struct std::pair<double,bool>,struct std::pair<double,double>,struct std::pair<double,int> >
```