C/C++ 代码的编码和命名约定测试

2023-12-23

我正在寻找一个可以自定义的脚本/工具来检查和强制执行 C/C++ 代码的编码/命名约定。

它应该检查例如:

  • 代码行以一定长度包裹。
  • 私有变量有前缀_
  • 代码缩进正确。
  • 所有功能均已记录。

我正在从事的许多项目都是由客户外包的,这些客户往往有各种内部编码和命名约定。


不知道是否真的值得花时间,但如果你真的想要,你可以尝试构建类似的东西谷歌的cplint http://google-styleguide.googlecode.com/svn/trunk/cpplint/,这会检查他们的时尚指南 http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml.

我个人认为,彻底的审查和人们对遵循某些约定的承诺是确保代码“正确缩进”和变量命名一致的更好方法。也许投资制作一份像谷歌那样的文档,描述可接受的风格的细节,并让你公司的人接受它并坚持它。

为什么人类比剧本更好?答案很简单:人们稍后必须处理代码,他们应该关心关于他们正在写的东西。变量名称如i对于一个剧本来说很好,但如果它是一个剧本,我就不会从我的眼睛里溜走clientCount,它应该被适当地命名,能够做到这一点的脚本可能很快就会接管世界。 :)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C/C++ 代码的编码和命名约定测试 的相关文章

随机推荐

  • D3 - 显示/隐藏仅单击节点的文本

    我试图在单击时显示 隐藏 D3 中节点的文本 我尝试使用以下代码 var node svg selectAll node data json nodes node on click function if textShowing node
  • 如何手动更改 8086 的标志(在汇编代码中)?

    有没有办法手动更改每个标志 或者您是否必须使用一个您知道会改变它们的结果的命令 基本上我正在使用命令RCL 而且我不想一开始就得到1 所以我想改变CF到 0 我知道我可以使用如下命令 mov al 0 shl al 1 但我想知道是否有其他
  • 美国和加拿大的颜色网格单元

    我想为美国和加拿大的网格单元格着色 我的目标与这个问题非常相似 R 在地图上绘制填充的经纬度网格单元 https stackoverflow com questions 11164974 r plot filled longitude la
  • 使用 bash 在目录树中按名称查找文件

    Using bash 如何在目录树中的某处找到具有特定名称的文件pwd 更清楚地说 我想找到位于工作目录根目录中的文件 但我不知道根目录在哪里 而且我的pwd可能在根以下的任何地方 Find file txt直到根 x pwd while
  • 当我尝试对列表进行排序时,出现错误“dict”对象没有属性

    我创建列表的代码是 choices for bet in Bet objects all Here is code that skip loop if bet choice exist in choices temp choice bet
  • Keras ValueError:输入 0 与层 conv2d_1 不兼容:预期 ndim=4,发现 ndim=5

    我已经检查了所有解决方案 但仍然面临同样的错误 我的训练图像形状是 26721 32 32 1 我相信它是 4 维 但我不知道为什么错误显示它是 5 维 model Sequential model add Convolution2D 16
  • FastAPI 作为 Windows 服务

    我正在尝试将 FastAPI 作为 Windows 服务运行 找不到任何文档或任何文章来将 Uvicorn 作为 Windows 服务运行 我也尝试使用 NSSM 但我的 Windows 服务停止了 我设法使用 NSSM 将 FastAPI
  • 如何检查浏览器是否打开

    如何检查浏览器是否打开 我知道我可以检查进程 但有时进程正在运行 但计算机上的浏览器仍在启动 我只需要 Chrome 和 Firefox 两种浏览器 下面的代码获取所有正在运行的进程的文件名 如果 firefox exe 存在于返回哈希集列
  • 分页库 - 无法停止加载项目

    我正在使用分页库直接从网络加载日期 我是否必须实现逻辑来停止获取数据 就我而言 这可能是当收到的项目计数低于页面大小时 目前 当我到达列表末尾时 库会不断加载新页面 理论上 PageKeyedDataSource有一个结果回调 PageKe
  • 在 PHP 中转换日期时“调用非对象上的成员函数 format()”

    我无法摆脱这个错误消息 调用非对象上的成员函数 format 所以 我继续谷歌搜索并找到一些好的来源 例如这个 StackOverflow 问题 https stackoverflow com questions 2167916 conve
  • 如何通过单个查询删除除主键之外的所有索引

    我计划删除除主键之外的所有索引 我自己制作了主键 但所有其他索引都是 SQL Server 的建议 删除所有非主键索引后 计划使用 SQL Server Profiler 调优模板作为数据库调优顾问并创建索引 通过这种方式 计划不要有未使用
  • 计算一个月中的天数

    有没有什么方法可以计算一个月的天数 Yes Const July As Integer 7 Const Feb As Integer 2 daysInJuly gets 31 Dim daysInJuly As Integer System
  • Swift 从 Firebase 数据库获取特定值

    我正在尝试从 Firebase 数据库获取特定值 我查阅了一些文档 比如Google的 但我无法做到 这是数据库的 JSON 文件 Kullan c ahmetozrahat25 E Mail email protected cdn cgi
  • jQuery 中的去抖动函数

    我正在尝试使用 Ben Alman 的 jquery debounce 库对按钮的输入进行去抖动 http benalman com code projects jquery throttle debounce examples debou
  • 如何使用 Sharepoint 服务器作为 Inno 安装文件的源?

    我正在使用 Inno Setup 进行应用程序设置 此应用程序中包含的许多数据文件都存储在 Microsoft Sharepoint 服务器上 当我尝试使用 Sharepoint 在 来源 中提供的路径时 Files Source http
  • 如何在页面加载时从表中加载一定数量的行,并且仅在用户加载更多行时加载它们?

    我有一个使用 DataTables 的表 它包含大量行 因此这会导致页面加载非常缓慢 因为我假设浏览器会等到表格填满后再显示页面 我只想加载表格的一页 10 行 并且仅在用户浏览表格时显示更多数据 显示加载标志也很棒 我研究并听说过一个名为
  • SSRS 2012 在何处以及如何下载

    我需要 SQL Server 2012 的 SSRS 但是我在任何地方都找不到它 有人可以提供帮助并共享链接吗 我在我的机器上找到了一个但它必需的 Sharepoint 我需要它用于学习目的 这样我就没有共享点 谢谢你 您需要拥有三个不同版
  • Python 中 _ 的作用是什么? [复制]

    这个问题在这里已经有答案了 我在某处看到过关于 Python 中使用的字符如下 print 有人可以帮我解释一下它的作用吗 在交互式翻译中 始终指最后输出的值 gt gt gt 1 1 2 gt gt gt print 2 gt gt gt
  • 如何从 IBM Websphere 迁移到 Tomcat?

    我想要将现有的 IBM Websphere 应用程序服务器迁移到等效的 Tomcat 应用程序服务器吗 其次 如何使用 IBM HTTP Server ihs 配置这个迁移后的 Tomcat 应用服务器 简单介绍一下当前的系统 我们正在使用
  • C/C++ 代码的编码和命名约定测试

    我正在寻找一个可以自定义的脚本 工具来检查和强制执行 C C 代码的编码 命名约定 它应该检查例如 代码行以一定长度包裹 私有变量有前缀 代码缩进正确 所有功能均已记录 我正在从事的许多项目都是由客户外包的 这些客户往往有各种内部编码和命名