伴随 C/C++ 语言高度的灵活性和广泛的适用性,产生了面向语言、行业、企业等不同适用范围的编程规范,各有特点和侧重,本文分享如下具有典型意义的规范体系:
Google C++ Style Guide
Google C++ Style Guide,[中文版],简称 GSG,谷歌的 C++ 编程规范,在国内有较大影响力,是企业级规范,对代码的具体样式有细致的规定,可直接采用。
由于历史原因,GSG 较为保守,通过抑制语言特性以达到规避风险的目的。在早期尚未形成所谓“现代”编程思想的时候,此规范就已经面世并发挥作用了,其中的某些观点可能与官方不符,比如 C++ 创始人曾一度认为用常数 0 表示空指针比用 NULL 更好,而 GSG 则认为用 NULL 更好,但历史表明 GSG 的观点是正确的,C++11 引入了专属符号 nullptr 以表示空指针的值。
GSG 是实践经验的总结,也在不断发展,目前已适应 C++17,对提升代码可维护性有很高的参考价值。