当前位置: 首页 > article >正文

UE学习日志#23 C++笔记#9 编码风格

注:此文章为学习笔记,只记录个人不熟悉或备忘的内容

1 为代码编写文档

1.1 使用注释的原因

1.说明用途的注释

        应该注释的信息:输入,输出含义,参数的类型含义,错误条件和处理,预期用途,性能保证。一些明显能看出的信息不必加到注释。

2.用来说明复杂代码的注释

        一些算法的用途,具体一行的作用等等。

        例如,一些复杂代码的循环不变量,比如插入排序中要一直保证当前遍历索引i之前的数组元素是有序的。

3.传递元信息的注释

        例如文件的作者、创作日期、提供的特性、bug的编号、修改日志、版权声明、TODO等等。

1.2 注释的风格

1.每行都加注释

        只在复杂难以理解的情况下这么做,否则一些注释没有意义。

2.前置注释

        某些源代码控制系统可能帮助追踪的信息,看具体的使用方法。

3.固定格式的注释

        以标准格式编写可被外部文档生成器解析的注释。免费工具Doxygen可解析注释。

例如:

/*
*
*@param
*@return
*/

2 分解(decomposition)

        分解指将代码分成小段。

2.1 通过重构分解

        参考重构技术,例如增强抽象,提取方法和类,改善命名和位置等。

3 命名

C++编译器有几个命名规则

        名称不能以数字开头

        包含两个下划线的名称是保留名称,不应当使用

        以下划线开头跟着大写字母的名称是保留名称,不应当使用

        全局名称空间中以下划线开头的名称是保留的,不应当使用

        其他的就是一些命名规范,这些都看规定,常量要放在命名空间里。

4 格式

        看这部分的时候真没绷住吧,作者也有争论大括号应不应该换行的经历,原来大家都讨论过这个问题吗()

        然后就是区分制表符和空格,不同的地方制表符可能不同。


http://www.kler.cn/a/535707.html

相关文章:

  • RK3576——USB3.2 OTG无法识别到USB设备
  • 基于Hexo实现一个静态的博客网站
  • 初阶数据结构:树---堆
  • CSS(三)less一篇搞定
  • 使用 Ollama 在 Windows 环境部署 DeepSeek 大模型实战指南
  • 数据分析系列--[11] RapidMiner,K-Means聚类分析(含数据集)
  • Ubuntu重启搜狗输入法
  • 安卓路由与aop 以及 Router-api
  • golang轻量级版本管理工具g安装使用
  • Python 数据挖掘与机器学习
  • 【GeeRPC】7天用 Go 从零实现 RPC 框架 GeeRPC
  • python知识阶段小练习
  • 基于Java(MVC)+MySQL实现的心理咨询预约管理系统
  • 蛋糕商城 Rust 版介绍
  • Unity DoTween使用文档
  • deepseek API 调用-python
  • java 8 在 idea 无法创建 java spring boot 项目的 变通解决办法
  • react的antd中Cascader级联选择如何回显
  • 网络安全 风险评估指南 网络安全风险测评
  • Nginx 请求超时
  • CEF132 编译指南 Windows 篇 - 安装 Visual Studio 2022 (二)
  • Linux学习笔记15---定时器按键消抖实验
  • ASP.NET Core JWT
  • DeepSeek 引发 AI 大模型战火,编程语言群雄激战谁夺胜利权杖?
  • 4G核心网的演变与创新:从传统到虚拟化的跨越
  • e2studio开发RA2E1(8)----GPT定时器频率与占空比的设置