C++ Technical Report 1

✍ dations ◷ 2025-08-16 20:59:19 #C++ Technical Report 1

C++ Technical Report 1(TR1)是ISO/IEC TR 19768, C++ Library Extensions(库扩展)的一般名称。TR1是一份文件,内容提出了对C++标准库的追加项目。这些追加项目包括了正则表达式、智能指针、哈希表、随机数生成器等。TR1自己并非标准,它是一份草稿文件。然而它所提出的项目大多数已成为的C++11及之后版本的官方标准的一部分。这份文件的目标在于“为扩展的C++标准库创建更为广泛的现成实现品”。

编译器并不需要保证包含TR1的组件,因为TR1并非官方标准的一部分。顺带一提,Boost提供了TR1大部分的实现,数个编译器/库开发商也已提供了各自的实现版本。

TR1并不代表下一届标准的全部;举例而言,下一届的标准C++11包含了线程的支持。

新的组件被放置在std::tr1的名字空间()里,以和现在的标准库做区别。

TR1包含以下组件:

一个wrapper reference是由模板类reference_wrapper产生的实体()获得。wrapper reference近似于C++语言中的引用。

使用ref以获得任何实例的wrapper reference(对常数引用const &使用cref)。

wrapper reference对模板函数(template function)尤其有用,当模板参数推导不出引用的时候(示例如下:)

void f( int &r ) { r++; }template< class Funct, class Arg >void g( Funct f, Arg t ){  f(t);}int main(){  int i = 0;  g( f, i );          // 'g< void(int &r), int >' 被实例化  cout << i << endl;  // 輸出:0  g( f, ref(i) );     // 'g< void(int &r), reference_wrapper<int> >' 被实例化  cout << i << endl;  // 輸出:1}
智能指针(Smart Pointers)
  • 基于Boost Smart Pointer library
  • <memory>头文件增加了 - shared_ptrweak_ptr
  • 将(RAII)手法用于内存管理和异常安全性。

仿函数

以下四个模块被加进<functional>头文件之中:

第二类柱贝塞尔函数

第二类球贝塞尔函数

C++被设计成与C语言兼容,但由于不同的标准,C++并不是C的严格超集合。TR1试图调和这些差异,透过对各种头文件,如<complex>、<locale>、<cmath>等进行扩展。这些改变帮助C++能够与C99版本的C标准更为一致(并非所有C99都包含于TR1)。

相关

  • 牙刷牙刷是用于刷牙的一种刷子。它的结构,是将嵌满一束束高密度刷毛的刷头安装在握把上,促进清洁口腔中难以触及的区域。一般刷牙时都会在牙刷上加上牙膏以提高刷牙的功效。市面上
  • 范式范式(Paradigm),或典范,又可称为世界观(world view),由托马斯·库恩《科学革命的结构》提出。在1960年之后是指在科学领域和知识论行文中的思维的方式。范式过去被用来描述科学上截
  • 锡利斯特拉锡利斯特拉(保加利亚语:Силистра)是位于保加利亚东北部多布罗加的一个港口城市。靠近罗马尼亚边境。锡利斯特拉是锡利斯特拉州的首府所在地。也是南多布罗加的一个重要
  • 欧洲联盟专门机构欧洲联盟专门机构(英语:Agencies of the European Union)是欧洲联盟的分权机关,与欧洲联盟机构并不相同。公署的建立是为了完成某项特定目标。各公署均为法人。一些公署的成立是
  • 波佩克与戈德堡虚拟化需求波佩克与戈德堡虚拟化需求(英语:Popek and Goldberg virtualization requirements)是一组充分条件,用于验证某一计算机体系结构可否被有效虚拟化。杰拉尔德·J·波佩克与罗伯特
  • 朱 -Aka-《朱 -Aka-》是猫猫软件第四套制作的视觉小说,《银色 ~完全版~》的续作。于2003年6月13日发售的成人游戏,游戏最初预定于2002年秋发售,但期间多次延期,到2003年以后更几乎每个月都
  • 2009台湾国际艺术节2009台湾国际艺术节为两厅院以“科技”为策展主轴,精选12档国内外重量级演出,以“未来之眼”为主题,让国内观众在全球化科技艺术浪潮中,与世界同步,亲睹最具前瞻性、指标性的节目
  • 莉兹·玛姬伊丽莎白(莉兹)·J.菲利普(英语:Elizabeth J. Phillips,原姓玛姬,英语:Magie,更广为人知的名字是莉兹·玛姬,英语:Lizzie Magie,1866年-1948年),美国游戏发明家暨乔治主义者,莉兹发明了大地
  • 青岛食品青岛食品股份有限公司(深交所:001219,简称:青岛食品;新三板除牌前:872387,简称:青岛食品),简称青食,是中华人民共和国的一家食品生产企业,前身为1950年建厂的青岛食品厂,1992年改制为股份有限公司。公司生产饼干面食、花生制品、红小豆制品、巧克力糖果、挂面面粉、休闲食品共六大类食品,其中钙奶饼干、花生酱为代表产品,在山东地区具有较高的品牌知名度。公司的注册商标“青食”使用青岛栈桥的图样。1950年1月20日,青岛市手工业联社供销社沧口办事处出资3000元,在沧口升平路45号成立青岛市手工业
  • 侯晓远侯晓远(1959年12月-),中国山东人。复旦大学教授,主要研究方向为半导体表面、界面物理实验研究。中华人民共和国教育部第三批“长江学者”特聘教授,任中国物理学会常务理事、中国物理学会表面物理专业委员会主任,担任多个学报编委,获得求是科技基金会 “杰出青年学者奖”等多项奖项,取得多项发明专利,发表论文60余篇。1982年3 月获得复旦大学物理系学士学位,1987年3月复旦大学物理系研究生毕业,同年获理学博士。毕业后留校任教至今;1988年、1993年曾两次赴德国杜依斯堡大学固体物理实验室进行合作研究。 1