版权归原作者所有,如有侵权,请联系我们

[科普中国]-型别构造器

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

类型构造器也称类型构造子,是把若干已知类型组合成一新类型的手段。可以看作是类型的构造函数。

简介类型构造器也称类型构造子,是将若干已知类型组合成一新类型的手段。可以看作是类型的构造函数。打个比方,如果说普通的函数操作变量并产生新值,那么类型构造器就是操作类型返回新类型。

例如,数组 T[] 是若干相同类型 T 元素的有序集合,我们说从 T 类型构造出“T 的数组”这一类型的类型构造器是(后缀)[]、即“加上数组”。1

数据类型在程序设计的类型系统中,数据类型(英语:Data type)是用来约束数据的解释。在编程语言中,常见的数据类型包括原始类型(如:整数、浮点数或字符)、多元组、记录单元、代数数据类型、抽象数据类型、引用类型、类以及函数类型。数据类型描述了数值的表示法、解释和结构,并以算法操作,或是对象在存储器中的存储区,或者其它存储设备。1

C++11C++11,先前被称作C++0x,即ISO/IEC 14882:2011,是C++编程语言的一个标准。它取代第二版标准ISO/IEC 14882:2003(第一版ISO/IEC 14882:1998公开于1998年,第二版于2003年更新,分别通称C++98以及C++03,两者差异很小),且已被C++14取代。相比于C++03,C++11标准包含核心语言的新机能,而且扩展C++标准程序库,并入了大部分的C++ Technical Report 1程序库(数学的特殊函数除外)。ISO/IECJTC1/SC22/WG21 C++标准委员会计划在2010年8月之前完成对最终委员会草案的投票,以及于2011年3月召开的标准会议完成国际标准的最终草案。然而,WG21预期ISO将要花费六个月到一年的时间才能正式发布新的C++标准。为了能够如期完成,委员会决定致力于直至2006年为止的提案,忽略新的提案。最终于2011年8月12日公布,并于2011年9月出版。

2012年2月28日的国际标准草案是最接近于C++11标准的草案,差异仅有编辑上的修正。

像C++这样的编程语言,透过一种演化的的过程来发展其定义。这个过程不可避免地将引发与现有代码的兼容问题,在C++的发展过程中偶尔会发生。不过根据比雅尼·斯特劳斯特鲁普(C++的创始人并且是委员会的一员)表示,新的标准将几乎100%兼容于现有标准。1

参见C++11:中的元函数类,例如add_pointer返回T*、remove_reference去掉引用&之类。

本词条内容贡献者为:

王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所