博客
关于我
Effective C++条款54:杂项讨论——让自己熟悉包括TR1在内的标准程序库
阅读量:522 次
发布时间:2019-03-08

本文共 929 字,大约阅读时间需要 3 分钟。

一、C++标准的历史

  • C++标准初始于1989年,由国际标准化组织(ISO)推动。ISO其实是一个大群国家标准组织,成员机构包括美国的ANSI
  • 下面是C++标准的发展历程:
    • ①C++98:于1998年批准,是第一份C++标准规则
      • 官方名称是Inforamtion Trchnology-Programming Languages-C++,文档编号ISO/IEC 14882:1998
    • ②C++03:这是个所谓“技术勘误”(technical corrigendum,TC),内含不甚严重的C++98 bug修正
      • 文档编号ISO/IEC 14882:2003.不论C++98或C++03都被视为“第一份C++标准规则”
    • ③TR1:内含大幅度的标准库扩充。它所涵盖的扩充全部包含于namespace std::tr1内
      • 官方名称是Information Technology-Programming Languages-technical Report onC++ Library Extensions。文档编号ISO/IEC TR 19768:2007
    • ④C++11:批准于2011年,是第二份C++标准。C++11内含语言和标准库两方面皆十分重要的改善和强化,而TR1所做的扩充也被纳入称为namespace strd的一部分
      • 官方名称又一次是Inforamtion Trchnology-Programming Languages-C++,新的文档编号ISO/IEC 14882:2011
      • C++11这一标准长时间被称为“C++0x”,带着一种“将于2009年前完成”的大众期待,所以不论C++11还是C++0x,其实都是同一份东西,一律称之为C++11
    • ⑤C++17/C++20

二、TR1之前的标准库内容(C++98)

三、TR1标准

  • TR1详细叙述了14个新组建,统统放在std命名空间内,然后定义在tr1中,因此书写时既可以加std::限定符,也可以加std::tr1::限定符

内容如下:

  • 其他TR1组件划分为两组
  • 第一组是提供彼此互不相干的独立机能。例如:

  • 第二组TR1组件由更精巧的template编程技术(包括模板元编程,见条款48)构成:

转载地址:http://ellnz.baihongyu.com/

你可能感兴趣的文章
Mysql学习总结(37)——Mysql Limit 分页查询优化
查看>>
Mysql学习总结(38)——21条MySql性能优化经验
查看>>
Mysql学习总结(39)——49条MySql语句优化技巧
查看>>
Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
查看>>
Mysql学习总结(40)——MySql之Select用法汇总
查看>>
Mysql学习总结(41)——MySql数据库基本语句再体会
查看>>
Mysql学习总结(42)——MySql常用脚本大全
查看>>
Mysql学习总结(43)——MySQL主从复制详细配置
查看>>
Mysql学习总结(44)——Linux下如何实现mysql数据库每天自动备份定时备份
查看>>
Mysql学习总结(45)——Mysql视图和事务
查看>>
Mysql学习总结(46)——8种常被忽视的SQL错误用法
查看>>
Mysql学习总结(48)——MySql的日志与备份还原
查看>>
Mysql学习总结(49)——从开发规范、选型、拆分到减压
查看>>
Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型
查看>>
Mysql学习总结(50)——Oracle,mysql和SQL Server的区别
查看>>
Mysql学习总结(51)——Linux主机Mysql数据库自动备份
查看>>
Mysql学习总结(52)——最全面的MySQL 索引详解
查看>>
Mysql学习总结(53)——使用MySql开发的Java开发者规范
查看>>
Mysql学习总结(54)——MySQL 集群常用的几种高可用架构方案
查看>>
Mysql学习总结(55)——MySQL 语句大全再温习
查看>>