WindowsclientC/C++编程规范“建议”——前言

WindowsclientC/C++编程规范“建议”——前言

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

前言

        工作中接触了非常多编程规范。当中最有意思的是,公司近期公布了一版C/C++编程规范,然后我看到该规范的最后一段时,有这么一句:“该规范不适用于Windows平台开发”。看来这份规范是由做其它平台开发的同学制定的。那么做Windows开发的人都去哪儿了?后来因为工作须要,项目组须要我制定一份编程规范。这也是我这系列博客的由来。(转载请指明出于breaksoftware的csdn博客)

        说到“规范“”,可能没多少人喜欢这种东西。相信非常多project师和我一样,都喜欢互联网的一些特质:自由、兼容并包。己所不欲勿施于人,所以我制定该“规范”时,也是抱着开放的态度——在”规范“之后加了”建议“二字。之后,我都会统称这些条例为“建议”。

        假如说指定“规范”是easy的(事实上也不easy),那么最难的是让人遵从。一般假设我们想遵从什么,肯定要先想好我们为什么要遵从,我们遵从之有什么优点,能够给我们带来什么?相同我也是按着这个思维去制定这种“建议”,我将会从代码的可读性、可维护性、健壮性等角度,思考和编制该“建议”。希望这些“建议”能够协助大家写出更易读、更健壮、更好看的代码。

        本“建议”条例分为下面若干等级:

【必须】

编码必须遵从。

【要求】

该规则能够很好的提高易读性、高效性和安全性。在特殊情况下,能够不遵从,可是须要给出不遵从的理由。

【推荐】

该规则能够部分提高易读性、高效性和安全性。在大部分情况下,须要遵从。

【建议】

该规则仅仅是作为建议,代码作者能够依据自己推断来决定。

        本“建议”中样例代码,使用不同底色表示代码是否存在问题:

        快哭了表示代码存在问题。

        微笑表示一种能够修复存在问题代码的方式。

        本建议将分为下面若干模块。我会依据工作中新的发现和认识以及朋友们的建议,不定期更新这些条例。并将更新历史记录在该文的末尾,以便大家查阅。

        模块:

  1. 函数                     《WindowsclientC/C++编程规范“建议”——函数》
  2. 指针                     《WindowsclientC/C++编程规范“建议”——指针》 
  3. 函数调用             《WindowsclientC/C++编程规范“建议”——函数调用》
  4. 表达式和运算     《WindowsclientC/C++编程规范“建议”——表达式和运算》
  5. 结构                     《WindowsclientC/C++编程规范“建议”——结构》
  6. 宏                         《WindowsclientC/C++编程规范“建议”——宏》
  7. 文件                     《WindowsclientC/C++编程规范“建议”——文件》
  8. 变量和常量         《WindowsclientC/C++编程规范“建议”——变量和常量》
  9. 风格                     《WindowsclientC/C++编程规范“建议”——风格》

        更新历史:

时间 内容 备注
2014.07.18 录入“建议”各项 初稿
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118047.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月14日 下午12:00
下一篇 2021年12月14日 下午1:00


相关推荐

  • 不会报错的Matlab2018a安装包[通俗易懂]

    不会报错的Matlab2018a安装包[通俗易懂]matlab2018a的百度云盘链接:https://pan.baidu.com/s/1972rkmKFw1xZLXfnYtNv-Q提取码:k6hc(永久有效)安装包内含有详细的安装教程的word文档。安装完如下:

    2022年6月3日
    36
  • 数据库表设计 基本思路[通俗易懂]

    数据库表设计 基本思路[通俗易懂]好的数据结构会影响速度。好的数据库表设计会影响数据库操作效率。特别是数据多的时候,如果表的结构不好的话操作的时候条件(where后的内容)会变的非常复杂。SQL是关系数据库中用到的一种语言。所以,为了简化SQL,表的关系(内部和外部)要尽量设计的合理。下面有几个可以参照的步骤:1)找出那个表要描述的东西;2)列出你想通过这个表得到的相关信息的列表;3)通过上面的信息列表,将信息

    2022年6月20日
    32
  • 信息提取(Information Extraction)

    信息提取(Information Extraction)信息提取 IE 信息提取 IE 的目标是将文本信息转化为结构化信息 起初用于定位自然语言文档中的特定信息 属于自然语言处理的一个子领域 随着网页文本信息的急剧增长 越来越多的人投入到信息提取 IE 领域的研究 网页文本信息的非结构化特征和无序性 一般只能采用全文检索的方式查找 但是网页中充斥着大量的无关信息 比如广告和无关链接以及其他内容 有用信息和无用信息混杂在一起 给网页信息的检索问题带

    2026年3月19日
    2
  • java 字符串 转日期,Java字符串转日期类型

    java 字符串 转日期,Java字符串转日期类型满意答案原理就是先设置原先日期的格式 yyyy 年 MM 月 dd 日 EHH 点 mm 分然后 parse 取得他的 Date 再然后就是设置后面日期的格式 yyyy 年 MM 月 dd 日 HH 点 mm 分通过 format 获得 Stringimport text ParseExcepti importjava text SimpleDateFo importjava util Date publiccl

    2026年3月16日
    2
  • 在Ubuntu中安装Pycharm(Ubuntu21.10,Pycharm2021.1.3)

    在Ubuntu中安装Pycharm(Ubuntu21.10,Pycharm2021.1.3)本文讲述了在 Ubuntu 中安装 pycharm 的具体步骤准备环境 Ubuntu21 10 Pycharm2021 1 3 具体步骤 1 首先下载 pycharm Pycharm 官方下载地址我在这里选择的是 2021 1 3 的专业版 选择下载 Linux 版本的 pycharm 下载好的 pycharm 如图所示 2 右键点击刚刚下载的文件 选择提取到此处 3 打开终端 输入 cd 命令行 进入刚刚解压文件夹下的 bin 文件夹 命令行是 cd 文件夹名称 并按回车键 cdpycharm professional 20

    2026年3月17日
    2
  • mysql和oracle的区别有什么

    mysql和oracle的区别有什么1、mysql与oracle都是关系型数据库,应用于各种平台。mysql开源免费的,而oracle则是收费的,并且价格非常高。2、管理工具上mysql的管理工具较少,在Linux下的管理工具的安装有时需要安装额外的包(phpmyadmin,etc),有一定复杂性。oracle有多重成熟命令行、图形界面、web管理工具,还有很多第三方的管理工具,管理极其方便高效。oracle支持大并发,大访问量,是OLTP最好的工具。3、数据库的层次结构上mysql:默认用户是root,用户下可以创建好多数据库,

    2025年11月14日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号