标签:
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++核心指南提到的设计哲学:
有兴趣的可以去读一读,最好还有人能翻译成中文分享给大家。
标签:
原文地址:http://my.oschina.net/sulliy/blog/517024