C++2011标准文档ISO/IEC14882-2011正式版概述
3星 · 超过75%的资源 需积分: 47 99 浏览量
更新于2024-07-30
1
收藏 14.26MB PDF 举报
"ISO/IEC 14882:2011(E) C++ 2011标准文档正式版"
C++ 2011标准文档,即ISO/IEC 14882:2011,是C++编程语言的第三版官方标准,发布于2011年9月1日。这个标准对C++进行了重大更新,引入了许多新特性和改进,旨在提高效率、可读性以及对现代编程需求的支持。
1. **范围(Scope)**:C++ 2011标准涵盖了C++语言的各个方面,包括语法、类型系统、内存模型、对象模型、程序执行模型以及库规范。它定义了C++程序的正确性、移植性、性能和效率的要求。
2. **规范引用(Normative references)**:标准中可能引用了其他规范作为其定义的基础。在2011版中,这些引用可能包括了与C++兼容的相关国际标准或技术报告。
3. **术语和定义(Terms and definitions)**:标准明确了一系列关键术语和定义,以确保开发者对C++中的概念有统一的理解。例如,"对象"、"类型"、"表达式"等。
4. **实现合规性(Implementation compliance)**:标准规定了编译器和库实现必须遵守的规则,以及可以进行的一些自由度。例如,编译器可以选择是否支持某些可选特性。
5. **本国际标准的结构(Structure of this International Standard)**:标准文档通常分为多个部分,详细介绍了语言的不同方面,如预处理、声明和定义、表达式、语句、类、模板、异常处理、库等。结构清晰,方便读者理解和查阅。
6. **语法记号(Syntax notation)**:标准使用巴科斯范式(BNF)或其他形式的语法描述来定义C++的语法结构,这有助于开发者理解语法规则。
7. **C++内存模型(The C++ memory model)**:内存模型描述了并发程序中数据的访问和修改如何同步,以及如何保证数据一致性。C++11引入了更强的内存模型,支持更高级别的并发编程。
8. **C++对象模型(The C++ object model)**:对象模型定义了C++程序中的对象如何在内存中表示和操作,包括对象的生命周期、构造与析构、继承、动态类型等。
C++11引入的新特性包括:
- **自动类型推断(Auto keyword)**:允许编译器自动推断变量的类型,简化代码。
- **右值引用(Rvalue references)**:用于优化移动语义,使得对象可以更高效地被转移和复制。
- **Lambda表达式**:允许在代码中创建匿名函数,增强了函数式编程能力。
- **强类型枚举(Strongly typed enums)**:提供了一种安全的枚举类型,避免类型转换错误。
- **类型安全的指针(Smart pointers)**,如`std::unique_ptr`和`std::shared_ptr`,管理对象的生命周期,防止内存泄漏。
- **多线程支持(Multithreading support)**:通过`<thread>`库提供了内置的多线程API。
- **并行算法(Parallel algorithms)**:`<algorithm>`库增加了并行版本的函数,如`std::parallel_for`。
- **模板元编程的改进**:包括`template aliases`和`SFINAE(Substitution Failure Is Not An Error)`规则的扩展。
这些新特性和改进使得C++11成为一个更加现代、强大且灵活的编程语言,适应了软件开发的不断变化的需求。
273 浏览量
2019-12-22 上传
2014-11-02 上传
2013-05-16 上传
2011-12-04 上传
2009-03-07 上传
2013-02-07 上传
2009-06-12 上传
2009-11-25 上传
liu_svr
- 粉丝: 1
- 资源: 12
最新资源
- unity和安卓交互调用安卓浏览器拉起应用市场
- react_timra_type脚本
- zhengzebiaodashi,java程序源码,多商户小程序商城Java
- Epic安装程序12.1.1.zip
- myguestbook
- crox-loader:用于 webpack 的 crox 加载器
- pygerduty:用于PagerDuty的Python库
- Android *纹理压缩-与代码示例的对比研究
- 静态路由基本配置(基于eNSP)
- 云悦智企业物联网官网
- code_practice
- 安卓扫描条码demoMatrix
- 基于全局和局部曲率属性的角点检测器:强大的角点检测器适用于灰度图像以及平面曲线。-matlab开发
- hellop:DevM课程HTML项目
- task:西斯玛(Sistema gerenciador de tarefas)
- Neon New Tab-crx插件