文档章节

[Github项目]C++核心指南

开源中国驻成都办事处
 开源中国驻成都办事处
发布于 2015/10/14 12:27
字数 657
阅读 437
收藏 4

C++作为一门多范型的语言,有灵活性。再加上C++的一些技巧,一些坑,很多公司都有自己的C++编码规范。这些规范一般都是建议什么该用,什么不该用,怎么去命名之类。没有提纲挈领地给出一个完整的规则体系。现在有了一些进展,Bjarne Stroustrup和Herb Sutter两位大神,在Github上发起了一个名为C++核心指南(C++ Core Guidelines)的项目。项目地址:https://github.com/isocpp/CppCoreGuidelines

C++核心指南目的是帮助大家高效地使用现代Modern C++。这里的Modern C++不是《Modern C++ Design》这本书,而是指C++11和C++14(包括马上到来的C++17)。C++1x代表了C++快速发展的新时期,很多借鉴自其它语言的特性已经让C++有很大的变化。这些新特性还有待工程部门的使用验证。

C++核心指南想C++的使用规则分为两个层面:高级层面和低级层面。高级层面涉及的是接口、资源管理、并发等,高级层面的规则会影响应用的结构和库的设计。遵循高级层面的规则,能够让代码静态类型安全,没有资源泄露,能够避免大部分编码中的逻辑错误。高级层面的规则是针对人。低级层面的规则则描述地是编码细节,比如命名规则,保证初始化,这部分规则主要针对的是工具,静态检查分析工具能够检测出代码是否违背了低级规则。C++核心指南将重心放在了高级层面的规则上。

C++核心指南囊括了下面的内容:

C++核心指南提到的设计哲学:

有兴趣的可以去读一读,最好还有人能翻译成中文分享给大家。


© 著作权归作者所有

共有 人打赏支持
开源中国驻成都办事处
粉丝 84
博文 287
码字总数 335913
作品 0
成都
程序员
私信 提问
C++ 之父 Stroustrup 推出“ C++ 核心准则”

2015年的 C++ 大会 9月20-25日在美国华盛顿州的 Bellevue 举行。C++ 之父 Bjarne Stroustrup 在本次大会的主题演讲上,宣布了C++ 的核心准则(C++ Core Guidelines)。这份准则旨在帮助程序员...

oschina
2015/09/27
9.7K
52
演练:在 Visual Studio 中编译面向 CLR 的 C++ 程序 (C++)

通过使用 Visual Studio 开发环境,您可以创建使用 .NET 类的 Visual C++ 程序,并对它们进行编译。 在本过程中,您可以键入自己 的 Visual C++ 程序,也可以使用示例程序之一。本过程中使用...

Yong_Luo
2010/10/01
0
0
c语言基础学习11_项目实战:IDE(集成开发环境)

============================================================================= ============================================================================= 涉及到的知识点有: 一......

黑泽明军
01/29
0
0
整理了一些免费的编程中文书籍

在 github 上整理了一些免费的编程中文书籍 https://github.com/justjavac/free-programming-books-zh_CN 如果谁还有别的书籍,可在此留言。 语言无关类 WEB服务器 Nginx开发从入门到精通 (源...

justjavac
2013/11/04
1K
2
JSON for Modern C++ 3.0.0 正式发布:包含重大变更

在将近一年的开发之后,JSON for Modern C++ 终于发布了它的全新版本,这是一个主要的版本。由于坚持语义化,所以该版本会有一些破坏性的变更,建议在更新之前仔细阅读发布说明。此外,还增加...

局长
2017/12/18
3.8K
11

没有更多内容

加载失败,请刷新页面

加载更多

安卓代码混淆

Proguard是安卓提供的方便开发者对代码和apk进行保护和精简的工具,可在SDK/tools文件夹下找到。 proguard的作用 : 1,代码混淆 2,精简代码,删掉没有用到的代码,减小apk的体积。 使用场景...

whoisliang
7分钟前
0
0
配置Tomcat虚拟主机

12月13日任务 16.4 配置Tomcat监听80端口 16.5/16.6/16.7 配置Tomcat虚拟主机 16.8 Tomcat日志 配置tomcat监听80端口 默认tomcat监听的是8080端口,如果想直接输入ip就访问到网页,就需要进行...

robertt15
12分钟前
1
0
emqtt Qos 0, 1, 2 图解

SimonAt
13分钟前
0
0
基于vue2定义自己的图表echart组件

先安装echarts cnpm i echarts -S,然后定义父组件 <template> <div> <echarts :option="echartOpion"></echarts> </div></template><script> import echarts from './e......

莫沫达
20分钟前
1
0
详解CSS的Flex布局

本文由云+社区发表 Flex是Flexible Box 的缩写,意为"弹性布局",是CSS3的一种布局模式。通过Flex布局,可以很优雅地解决很多CSS布局的问题。下面会分别介绍容器的6个属性和项目的6个属性。每...

腾讯云加社区
32分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部