C++变长参数
2016-11-04 17:27
218 查看
C++变长参数举例
int i = 0;
template<typename T>
void print(ostream & os, T && v)//必须指定,不然下面的变长参数版本无限循环
{
os << v <<endl;
}
template<typename T,typename...Args>
void print(ostream & os, T &&v, Args&&...args)
{
if (!i)
{
cout << sizeof...(Args) << endl;
cout << sizeof...(args) << endl;
cout << "begin..." << endl;
++i;
}
os << v << "," << endl;
print(os, args...);
}
int main()
{
print(cout, 4, 5, 6, 7, 8, 9, 0, 32, 434.324, "43536", "sdag");
cin.get();
return 0;
}
//欢迎补充,加内部群: 569624724
int i = 0;
template<typename T>
void print(ostream & os, T && v)//必须指定,不然下面的变长参数版本无限循环
{
os << v <<endl;
}
template<typename T,typename...Args>
void print(ostream & os, T &&v, Args&&...args)
{
if (!i)
{
cout << sizeof...(Args) << endl;
cout << sizeof...(args) << endl;
cout << "begin..." << endl;
++i;
}
os << v << "," << endl;
print(os, args...);
}
int main()
{
print(cout, 4, 5, 6, 7, 8, 9, 0, 32, 434.324, "43536", "sdag");
cin.get();
return 0;
}
//欢迎补充,加内部群: 569624724
相关文章推荐
- C/C++语言中可变参数的用法
- C/C++中的函数参数传递机制
- [收藏]C++ Tips(4)--参数的检查
- C++变长参数函数的用法(转载)
- 关于C++中的缺省参数
- 高质量c++(指针参数是如何传递内存的?)
- [收藏]C++ Tips(8)--指针参数
- 对C/C++可变参数表的深层探索1
- 对C/C++可变参数表的深层探索3
- 混沌 IN C++::模板参数的奥秘
- C/C++中的函数参数传递机制
- [收藏]C++ Tips(9)--函数参数中的const
- C/C++语言可变参数表深层探索
- C++特性探寻-可变参数和参数进栈顺序
- 混沌 IN C++::模板参数的奥秘
- 为什么C++中的拷贝构造函数参数不能值传递
- c/c++的参数压栈顺序
- [收藏]C++ Tips(9)--函数参数中的const
- C++中函数中参数和返回值都是用户定义类型(这里主要是类的情况时的分析)
- C/C++ 可变参数函数