码迷,mamicode.com
首页 > 编程语言 > 详细

遍历输出tuple元素的简洁方式(C++11)

时间:2017-09-15 10:16:51      阅读:282      评论:0      收藏:0      [点我收藏+]

标签:include   void   using   val   temp   版本   输出   span   ...   

//遍历输出tuple元素的简洁方式(C++11)
//Win32Con17_VS2017_01.cpp
#include <iostream>
#include <tuple>
using namespace std;

template<typename... Args>
void myprint_impl(tuple<Args...> tup)        //泛化版本
{
    cout << tup._Myfirst._Val << ((tup._Mysize > 1) ? ", " : "");    //输出tup的头1项
    myprint_impl(tup._Get_rest());                                    //对除头1项之外的tup递归调用
}

template<>
void myprint_impl(tuple<> tup)                //终止条件
{
    cout << endl;
}

int main()
{
    auto t = make_tuple(3, 4.67, "Hello", true);
    myprint_impl(t);        //3, 4.67, Hello, 1

    system("pause");
    return 0;
}

 

遍历输出tuple元素的简洁方式(C++11)

标签:include   void   using   val   temp   版本   输出   span   ...   

原文地址:http://www.cnblogs.com/ybmj/p/7524242.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!