72、C++ 代码格式规范的一个工具使用:clang-format

news2024/9/27 9:29:32

本节与小册内容无关,仅仅是介绍一个C++代码格式规范化的工具,用来将写的杂乱无章,格式不规范的C++代码来统一调整为规范的格式,包括空格、对齐等,使得C++代码美观大方。

因为 C++ 仓库中用到了这个工具,所以介绍下,有平时用C++做开发的同学也可以使用一下。

clang-format

clang-format 是 clang 项目中的一个工具,专门用来对代码格式进行规范,目前很多大型的C++项目,如 tensorflow 等,都会使用该工具对项目代码格式进行管理。

在 tensofrlow 的 github 仓库下,可以看到有 .clang-format 文件,就是配置了一些代码格式的风格。

如上,风格采用的 Google 的代码风格,使用方法也很简单。直接运行一行命令即可完成对一个C++文件的风格规范化:

clang-fotmat -i 你的文件

看一个例子

我先把仓库中 cpp/1st_origial/resnet.h 中的代码格式打乱如下,主要打乱了空格和对齐。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1379886.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法回忆录——排序

文章目录 1. 插入排序2. 选择排序3. 冒泡排序4. 希尔排序5. 归并排序6. 快速排序7. 堆排序8. 计数排序9. 桶排序10. 基数排序 1. 插入排序 分为两个序列,前面一个序列是排好序的,后面一个序列是未排好的。未排好的序列的第一个元素(a&#x…

独立客服系统的消息通知推送

消息通知 当我们在自己网站上嵌入对接了客服代码,我们想要通过微信接收访客的消息提醒通知,可以通过扫描客服后台的微信二维码,即时收消息通知提醒。 客服后台 后台主页面板,就展示了一个微信二维码,扫码关注公众号…

【大数据】Flink 详解(八):SQL 篇 Ⅰ

本系列包含: 【大数据】Flink 详解(一):基础篇【大数据】Flink 详解(二):核心篇 Ⅰ【大数据】Flink 详解(三):核心篇 Ⅱ【大数据】Flink 详解(四…

太阳光模拟器在晶圆硅片均匀加热解决方案

概述 晶圆硅片是半导体行业中使用的一种重要材料。它是由单晶硅经过一系列工艺加工而成的薄型圆片。晶圆在半导体制造过程中起到了基础性的作用,是制作晶体管和集成电路的关键原材料。硅片是一种重要的半导体材料,被广泛应用于电路制造、太阳能电池板等…

kafka: 基础概念回顾(生产者客户端和机架感知相关内容)

一、kafka生产者客户端 在kafka体系结构中有如下几个重要的概念: Producer:生产者,负责生产消息并投递到kafka broker的某个的分区中Consumer:消费者,负责消费kafka若干个分区中的消息Broker:kafka服务节…

微软为Windows内置记事本应用开发AI功能;2024年15个 AI 语音生成器

🦉 AI新闻 🚀 微软为Windows内置记事本应用开发AI功能 摘要:微软正在开发一个新的生成式AI功能,名为"Cowriter",用于Windows内置的记事本应用。该功能类似于画图应用中的"Cocreator"功能&#x…

计算机导论04-操作系统

操作系统基础 操作系统及其特征 操作系统的概念 操作系统是: 管理和控制计算机硬件与软件资源的计算机程序的集合;操作系统直接运行在“裸机”之上,是最基本的系统软件,其他软件都必须在操作系统的支持下才能运行。 操作系统…

vue中使用js-doc

安装依赖 安装vue-template-compiler npm install ​vue-template-compiler​npm install ​vue-template-compiler​ 安装minami npm install minami 安装js-doc npm install js-doc 根目录下创建 .jsdoc.conf.json 内容: {"tags": {"all…

VMware Visio OmniGraffle模板和图标

VMware Visio OmniGraffle模板和图标 包含可用于Visio、omnigraffle的图标和SVG矢量图。 简介 这组资源适用于 IT 管理员、系统架构师、网络工程师和其他需要可视化 VMware 基础架构的专业人士创建精确的 VMware 网络和数据中心部署图,通过使用这些模板和图标&am…

国内开源环境漫谈

我国开源软件产业相较于欧美发达国家而言起步相对较晚,开源项目很少超过五年,开发者较年轻。国外很多开源项目都是10年以上的规划与投入。在开源社区发展初期、发展期、协作期、结晶期与流行期的五个阶段中,中国的开源社区平台大多处于前三个…

RabbitMQ解决消息丢失以及重复消费问题

文章目录 1、概念2、基于ACK/NACK机制2.1 基于Spring AMQP框架整合ACK/NACK机制2.2 测试消费失败1.02.3 测试结果1.02.4 测试MQ宕机2.5 测试结果2.0 3、RabbitMQ 如何实现幂等性设计3.1 幂等服务设计思路3.1.1 通过雪花算法生成分布式唯一ID3.1.2 通过枚举类,设计Me…

亚马逊怎么防止店铺关联?

亚马逊(Amazon)为了确保公平竞争和防止不当行为,采取了一些措施来防止店铺关联,即通过不同的方式将多个店铺相关联,以获取不正当的竞争优势。以下是一些亚马逊防止店铺关联的主要措施: 同一经营者规定&…

【TC3xx芯片】TC3xx芯片电源管理系统PMS详解

目录 前言 正文 1.供电模式选择(Supply Mode Selection) 1.1 供电域 1.2 供电模式 1.3 供电阈值 1.4 供电上升和下降行为Supply Ramp-up and Ramp-down Behavior 1.5 EVRC产生供电 2. 电源监控 2.1 电源监控原理 2.2 Primary低电压监控 2.3 …

轻松掌握构建工具:Webpack、Gulp、Grunt 和 Rollup 的使用技巧(上)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

spring常见漏洞(1)

简介 Spring的英文翻译为春天,可以说是给Java程序员带来了春天,因为它极大的简化了开发。得出一个公式:Spring 春天 Java程序员的春天 简化开发。最后的简化开发正是Spring框架带来的最大好处。 Spring是一个开放源代码的设计层面框架&a…

行为型设计模式——状态模式

状态模式 状态模式是比较简单的设计模式,它的主要作用是减少代码中大量的 if-else 或者 switch-case 等逻辑判断(俗称屎山)。它将每个状态定义为一个类,而每个状态类有自己对应的方法,因此当需要根据状态执行逻辑代码…

AI语音识别模块--whisper模块

1.下载 ffmpeg,挑一个自己电脑系统的版本,下载,如我win64: 地址: Releases BtbN/FFmpeg-Builds GitHub 下载压缩包zip,到本地 解压安装,其实无需安装,只需把对应的目录下的bin&…

采用不同的方式,合并多个文件为一个文件。其中包括:Java方法,Windows脚本,CMD命令

1. 批处理命令 可以实现不同文件的合并,将文件拖入这个命令即可。 echo off setlocal enabledelayedexpansionset "outputFilemerged_output.txt"rem Check if the output file already exists and delete it if exist "%outputFile%" del &qu…

阿尔泰科技——PXIe8912/8914/8916高速数据采集卡

阿尔泰科技PXIe8912/8914/8916高速数据采集卡是2通道同步采样数字化仪,专为输入信号高达 100M 的高频和高动态范围的信号而设计。 与Labview无缝连接,提供图形化API函数。模拟输入范围可以通过软件编程设置为1V 或者5V。配备了容量高达 2GB的板载内存。…

JAVA数组以及小练习

目录 数组的概述和静态初始化 数组的地址值和元素访问 数组的遍历 数组的动态初始化 数组练习 数组的概述和静态初始化 package 数组;public class array1 {public static void main(String[] args){//格式//静态初始化//数据类型 [] 数组名 new 数组类型[]{元素1&#xf…