TR1 tuple的用法
tr1里的tuple,相当于stl里面pair的扩展。pair只能放两个元素,而tuple至少可以放10个元素。
#include<tr1/tuple>
using namespace std::tr1;
tuple object可以由构造函数生成,也可以通过make_tuple和tie这两个函数生成。
//构造函数
tuple<int, int> tii(0, 0);
//make_tuple
tuple<int, int> tii = make_tuple(0, 0);
//tie
int i=0;
int j=0;
tuple<int, int> tii = tie(i, j);
tie与make_tuple的区别是,由tie生成的tuple对象,其中所有的元素都是引用类型。
tuple object生成后,可以通过tuple_size和tuple_element来获得该tuple object中元素的个数和每个元素的type信息。
cout<<tuple_size<tii>::value; //应该输出2,因为tii里面有两个元素
cout<<type_id(tuple_element<0, tii>::type).name(); //应该输出int,第0个元素的类型是int
其中value是tuple_size的静态成员,所以可以直接用::来获得。
同样,type是tuple_element的静态成员。type_id是一个操作符,帮助把类型转化为可读的形式。
通过函数get可以返回一个tuple object中的一个元素的引用,所以可以对tuple object中特定的元素进行读和写的操作。
get<0>(tii) = 2; //现在tii的值是(2, 0)
get<1>(tii) = 3; //现在tii的值是(2, 3)了。
TR1 tuple的用法相关推荐
- c++ tuple的用法
转自:http://www.cnblogs.com/qicosmos/p/3318070.html 这次要讲的内容是:c++11中的tuple(元组).tuple看似简单,其实它是简约而不简单,可以说 ...
- python元祖用法_Python序列(列表list和元组tuple)用法完全攻略
所谓序列,指的是一种包含多项数据的数据结构,序列包含的多个数据项(也叫成员)按顺序排列,可通过索引来访问成员. Python 的常见序列类型包括字符串.列表和元组.前一章介绍过的字符串,其实就是一种常 ...
- tuple python怎么用_python tuple基本用法
标签: 最近学习Django,在配置templates的路径TEMPLATE_DIRS的时候,死活要给我抱一个错:The TEMPLATE_DIRS setting must a tuple.原来tu ...
- [转载] python中元组(tuple)用法总结
参考链接: Python | tuple函数 一.tuple也是一个class,是不可变的list类型,不可以增删改. 创建: tup1 = ('physics', 'chemistry', 1997 ...
- python tuple基本用法
目录 1 没有什么用的 1.1 获取属性时自动调用 __getattribute__() 1.2 返回变量的可迭代对象 __iter__() 1.3 实例化后自动调用,调用顺序在__init_ ...
- python中元组(tuple)用法总结
一.tuple也是一个class,是不可变的list类型,不可以增删改. 创建: tup1 = ('physics', 'chemistry', 1997, 2000); tup2 = (1, 2, ...
- [转载] python tuple类型如何索引_Python基础数据类型——tuple浅析
参考链接: Python tuple() Python中tuple的使用 一.什么是元组? 有序列表叫元组:tuple.tuple和list非常类似,但是tuple一旦初始化就不能修改. 二.用法 1 ...
- php 元组,C++_浅析C++标准库元组(tuple)源码,一、什么是元组
元组不是什 - phpStudy...
浅析C++标准库元组(tuple)源码 一.什么是元组 元组不是什么新鲜东西,在数学.python语言还有我们今天要说的C++都有元组. 简单地说,元组就是一组东西,例如,在讲代数拓扑的时候,经常把拓 ...
- 2020-09-11 C++ 11 tuple元组和tie()的简单介绍
原文 :https://www.cnblogs.com/qicosmos/p/3318070.html 这次要讲的内容是:c++11中的tuple(元组).tuple看似简单,其实它是简约而不简单,可 ...
最新文章
- c+和python的区别-python和c先学哪个
- [小技巧]ASP.NET Core中如何预压缩静态文件
- (第2篇)一篇文章教你轻松安装hadoop
- [react] 举例说明在react中怎么使用样式
- element 项目 示例_Java ArrayDeque element()方法与示例
- 草稿 12月第2周 排课
- 计算机域名DNS设置,电脑的IP地址和DNS域名服务器如何设置
- CRLF对GIT DIFF的影响
- linux ruby安装目录,SuseLInux下安装Ruby 及 Rails遇到的问题及解决方法
- 趋势防毒墙网络版的安装部署(officescan)
- 人工智能的主要风险因素有哪些?
- 探索SpringCloud+ES实现高性能全文检索
- python 量化投资 长期横盘_python量化投资才是最正确的方式,只教方法,不股荐!...
- 如何让你的网站地址在发送到QQ朋友的时候显示绿色安全图标呢?
- 不要女程序员,公司都爱招男性程序员,这是为什么?
- Spring到底是什么
- 常用数据指标缩写以及说明(uv、pv、br、cr、dau……):
- Python教程: ‘==‘ 与‘is‘ 以及它们背后的小秘密
- 可跨页字符串:使用Spans设置文本样式
- 深信服行为感知命令执行漏洞
热门文章
- pyautogui 鼠标键盘自动化 库的中文版
- Geohash第三方库示例
- pdf合并与拆分软件的使用
- 黑马程序员—写给各位同学,并致黑马各位老师的一封感谢信~~~~绝对给力
- vue路由匹配上之后,但页面空白的问题
- Arcgis选择自己想要的区域地图
- C++版本OpenCv教程(十一)多通道分离与合并
- 【hadoop生态之Hive】Hive的查询语言【笔记+代码】
- r720换固态硬盘后如何重装系统_联想解决R720在Raid模式下重装Win10系统无法识别固态硬盘的问题...
- java pv uv_什么是pv和uv?