16类型不一致可变参数模板

xiaoxiao2021-02-28  38

//参数类型不一致,个数不确定 #include <iostream> #include <cstdarg> using namespace std; void show() //递归必须有一个结束符:空函数 { } template <typename T, typename...Args> //typename比class作用域更强 //typename...处理可变参数 void show(T t, Args...args) { cout << t << endl; //打印 show(args...); } void main() { show(1, 1.2, "123", "A"); cin.get(); }

总结:

1、CPP的可变参数库:#include <cstdarg>

2、尽量使用typename而不是class来声明一个模板

3、函数的可变参数模板必须用递归来实现

转载请注明原文地址: https://www.6miu.com/read-2626344.html

最新回复(0)