WindowsclientC/C++编程规范“建议”——前言
前言
工作中接触了非常多编程规范。当中最有意思的是,公司近期公布了一版C/C++编程规范,然后我看到该规范的最后一段时,有这么一句:“该规范不适用于Windows平台开发”。看来这份规范是由做其它平台开发的同学制定的。那么做Windows开发的人都去哪儿了?后来因为工作须要,项目组须要我制定一份编程规范。这也是我这系列博客的由来。(转载请指明出于breaksoftware的csdn博客)
说到“规范“”,可能没多少人喜欢这种东西。相信非常多project师和我一样,都喜欢互联网的一些特质:自由、兼容并包。己所不欲勿施于人,所以我制定该“规范”时,也是抱着开放的态度——在”规范“之后加了”建议“二字。之后,我都会统称这些条例为“建议”。
假如说指定“规范”是easy的(事实上也不easy),那么最难的是让人遵从。一般假设我们想遵从什么,肯定要先想好我们为什么要遵从,我们遵从之有什么优点,能够给我们带来什么?相同我也是按着这个思维去制定这种“建议”,我将会从代码的可读性、可维护性、健壮性等角度,思考和编制该“建议”。希望这些“建议”能够协助大家写出更易读、更健壮、更好看的代码。
本“建议”条例分为下面若干等级:
|
【必须】 |
编码必须遵从。 |
|
【要求】 |
该规则能够很好的提高易读性、高效性和安全性。在特殊情况下,能够不遵从,可是须要给出不遵从的理由。 |
|
【推荐】 |
该规则能够部分提高易读性、高效性和安全性。在大部分情况下,须要遵从。 |
|
【建议】 |
该规则仅仅是作为建议,代码作者能够依据自己推断来决定。 |
本“建议”中样例代码,使用不同底色表示代码是否存在问题:
表示代码存在问题。
表示一种能够修复存在问题代码的方式。
本建议将分为下面若干模块。我会依据工作中新的发现和认识以及朋友们的建议,不定期更新这些条例。并将更新历史记录在该文的末尾,以便大家查阅。
模块:
- 函数 《WindowsclientC/C++编程规范“建议”——函数》
- 指针 《WindowsclientC/C++编程规范“建议”——指针》
- 函数调用 《WindowsclientC/C++编程规范“建议”——函数调用》
- 表达式和运算 《WindowsclientC/C++编程规范“建议”——表达式和运算》
- 结构 《WindowsclientC/C++编程规范“建议”——结构》
- 宏 《WindowsclientC/C++编程规范“建议”——宏》
- 文件 《WindowsclientC/C++编程规范“建议”——文件》
- 变量和常量 《WindowsclientC/C++编程规范“建议”——变量和常量》
- 风格 《WindowsclientC/C++编程规范“建议”——风格》
更新历史:
| 时间 | 内容 | 备注 |
| 2014.07.18 | 录入“建议”各项 | 初稿 |
WindowsclientC/C++编程规范“建议”——前言的更多相关文章
- WindowsclientC/C++编程规范“建议”——函数
1 函数 1.1 代码行数控制在80行及以内 等级:[要求] 说明:每一个函数的代码行数控制应该控制在80行以内.假设超过这个限制函数内部逻辑一般能够拆分.假设试图超过这个标准.请列出理由. 但理由不 ...
- Windows客户端C/C++编程规范“建议”——风格
本文来自:http://blog.csdn.net/breaksoftware/article/details/37935459 命名风格也非常适用于C# 9 风格 9.1 优先使用匈牙利命名法 等级 ...
- 51单片机C语言学习笔记8:单片机C51编程规范
1.单片机C51编程规范- 前言 为了提高源程序的质量和可维护性,从而最终提高软件产品生产力,特编写此规范. 2.单片机C51编程规范-范围 本标准规定了程序设计人员进行程序设计时必须遵循的规范.本 ...
- 华为C语言编程规范
DKBA华为技术有限公司内部技术规范DKBA 2826-2011.5C语言编程规范2011年5月9日发布 2011年5月9日实施华为技术有限公司Huawei Technologies Co., Ltd ...
- 中兴软件编程规范C/C++
Q/ZX 深圳市中兴通讯股份有限公司企业标准 (设计技术标准) Q/ZX 04.302.1–2003 软件编程规范C/C++ 20 ...
- JAVA 编程规范
软件开发技术规范 PTHINK-DEVELOP-JAVA-091010 Java语言编程规范 2009-10-10发布 2009-10-11实施 ...
- FangDD Java编程规范
我们采用<Oracle/Sun原生的Java编程规范>和<Google Java编程规范> Google Java编程风格指南 January 20, 2014 作者:Haws ...
- 国内大型的内部 C# 编程规范
C#编程规范 改动记录 Ver. No 发版日期 编制人 批准人 改动的说明 目 录 1 1.1 1.2 2 2.1 2.1.1 Pascal 大写和小写 2.1.2 Came ...
- C++语言编程规范
前言 这里参考了<高质量C++C 编程指南 林锐>.<google C++编程指南>以及<华为C++语言编程规范>编写了这份C++语言编程规范文档,以合理使用 C+ ...
随机推荐
- java基础之& 和 && 的差别
&和&&都能够用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,仅仅要有一方为false,则结果为false. ...
- [置顶] 程序员面试之道(《程序员面试笔试宝典》)之看着别人手拿大把的offer,不淡定了怎么办?
不管是在哪里,不管发生什么事,不要随便放下自己. ——<当男人恋爱时> 很多求职者都会面临一个问题:别人手拿大把大把的offer了,而自己却是两手空空,别人签约之后已经过着“猪狗不如”的悠 ...
- 关于innodb purge thread和master thread
由innodb_purge_threads控制purge线程数. (>= 5.6.5)的版本号中该值默觉得1.最大值为32.默认值1表示innodb的purge操作被分离到purge线程中,ma ...
- C语言总结之---关键字
我记得我开始学习C语言的时候,那时候还在读高中,我们老师就把C语言的关键字,全部写在黑板上,老师说我们下面的两节课的内容就是(把它给记下来) 你还记得标准C有多少个关键字吗? 第一:关键字描述 C99 ...
- 不容错过的UI设计素材大合集
免费PSD素材 TETHR by InVision 这是出自InVision的8款PSD文件,其中包含了100个模板和超过500个UI控件.来自InVision和UI8的设计师一同协作完成了这套UI ...
- ASP.NET、WinForm - 判断整个页面文本框是否为空
foreach(Control ctrl in Page.Controls) { foreach(Control childc in ctrl.Controls) { switch(childc.Ge ...
- php 跳转控制
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 了解sota字符界面(章节4.1)
4 SOTA操作 4.1 SOTA字符界面 sotaCC是字符界面管理sota系统程序 . 在/.../sota/bin/目录下,启动sotaCC.在终端的该目录下输入指令“./sotaCC”,启动s ...
- Swift - 设置程序的应用图标和启动界面
一个应用,无论发布到App Store,还是安装到用户的屏幕上,都需要一个标志性的图标.同时,在应用启动时也要有个启动画面,否则启动时将会是纯黑的屏幕. 1,在项目的“General”选项卡下的“Ap ...
- Highcharts将数据以图表的形式展现
1.首先将Highcharts插件所需的js跟css样式文件引入项目中,下载地址为:Highcharts.rar 2.在前台页面中添加一个存放图表的容器 <div id="contai ...