输出任意一个tuple的元素
来源:互联网 发布:网络英语教程 编辑:程序博客网 时间:2024/06/05 17:04
运用C++11中的variadic template我们可以实现输出任意一个tuple元素
typedefseq<S...> type;
std::cout<< std::endl;
std::cout<< item<< ", "; show(rest...);
show(std::get<S>(tp)...);
unpack_tuple(tp,typenamegenseq<sizeof...(T)>::type());
std::tuple<int, double, char> tp{123,456.789, 'c'}; std::tuple<char *, float,std::string> tp1{"test for print tuple", 123.456789," successfully! :)"}; print_tuple(tp); print_tuple(tp1); return 0;
代码如下:
#include <iostream>
#include <tuple>
#include <stdio.h>
template <int... >
struct seq {};
template <int N, int... S>
struct genseq : genseq<N - 1, N - 1,S...>
{
};
template <int... S>
struct genseq<0, S...>
{
};
void show()
{
}
template <typename T, typename...TRest>
void show(const T& item, constTRest&... rest)
{
}
template <typename... T, int...S>
voidunpack_tuple(std::tuple<T...>&tp, seq<S...>sq)
{
}
template <typename... T>
voidprint_tuple(std::tuple<T...>&tp)
{
}
int main()
{
}
- 输出任意一个tuple的元素
- 动态输出一个任意行列的表格
- 使用指针输出二维数组的任意元素
- 获取任意一个元素的高度和宽度
- Volist判断输出的最后一个元素
- 任意输入一个整数,输出这个值的加法表
- 输入一个任意位数的整数进行逆序输出
- 做一个输出任意行(奇数)的空心菱形
- Python 遍历set的元素是tuple
- 模板超编程和tuple的输出
- JS任意元素的任意值运动
- 微软面试:输出整型数组任意两个元素差的绝对值的最小值
- 求一个数组中的和为任意一个数的两个元素
- 将任意一个三位数n逆序输出
- 设计一个算法把一个十进制整数转化为二至九进制之间的任意进制数输出
- 任意数的逆序输出
- 用C++的模板类定义一个万能数组,数组元素类型任意,数组大小也任意
- 一个简单的程序--数组元素的逆输出
- Linux 上实现双向进程间通信管道
- poj1077 /hdoj 1043 Eight
- Linux pipe
- LINUX c++线程池框架
- Python的垃圾回收机制
- 输出任意一个tuple的元素
- 『精品素材』35套免费的 Web & Mobile 界面设计套件《下集》
- 《程序员》 -- 用仿生人造皮肤打造一个半机械的你
- Android输入管理服务启动过程源码分析
- AfxBeginThread函数
- 挖地雷
- 开源 免费 java CMS - FreeCMS1.5 标签 infoList
- 如何引入第三方jar包(以google play service为例
- [Unity3D]无缝场景切换解决方案(1) - 简单场景切换