15类型一致可变参数模板

xiaoxiao2021-02-28  38

#include <iostream> #include <cstdarg> using namespace std; template<class T> T add(int n, T t...) //第一个表示多少个参数,最后 { cout << typeid(T).name() << endl; va_list arg_ptr; //开头指针 //va_list:char *类型 va_start(arg_ptr, n); //从arg_ptr开始读取N个 T res(0); //初始化为0 for (int i = 0; i < n; i++) { res += va_arg(arg_ptr, T); //根据数据类型取出数据 } va_end(arg_ptr); //cout << res << endl; return res; } void main() { cout << add(1, 2, 3) << endl; cout << add(1.1, 2.2, 3.3, 4.4) << endl; cin.get(); }
转载请注明原文地址: https://www.6miu.com/read-2628703.html

最新回复(0)