2309C++均为某个类型
#include <常用>
构 A{空 f(){打印("啊");}
};
元<类 T>构 是点啊:假型{};
元<>构 是点啊<A>:真型{};
元<类 T>概念 是呀=是点啊<T>::值;元<是呀...T>空 f(T&...t){(t.f(),...);
}//均为元<类...T>要求 均为值<A,T...>
空 g(T*...t){(t->f(),...);
}空 主(){A a,b,c;f(a,b,c);A*d,*e,*h;g(d,e,h);
}
2种方法,用假型/真型
太麻烦了,
不如用均为值
,顺便T
的参数,也可针对指针
.
看f/g
函数.
元<类 T>构 是点啊:假型{};
元<>构 是点啊<A>:真型{};
元<类 T>概念 是呀=是点啊<T>::值;
复杂的时候,这样搞,还是很方便
的,简单的话,就不必了.
还可以继续升级为如下更好版本:
元<类 T>概念 是啊=是相同值<T,A>;元<是啊...T>空 f(T&...t){(t.f(),...);
}//均为
是不是,更简单
了?