关于查看代码量多的文件和代码编写规范的一些方法

一、查看代码量多的文件

1、如果变量、函数命名比较易懂,直接按照下图操作即可
image

2、如果代码注释和放置无规律,如同类功能代码没有放在一块,可以按快捷键ctrl+k,再按ctrl+0,把所有代码都折叠起来,再去速览注释提示
image

3、对于注释不明白的变量和函数,我会反查这些变量和函数使用的场合,推断该它们的作用。反查有两种方法:全局搜索和右键弹出的选择框的反查功能,如下图所示
image

对于右键弹出的选择框的反查功能,我实测有时候这种方法会比全局搜索少一些,不知道为什么,这种方法不够保险
image

二、代码编写规范

1、个人觉得一份格式编写规范的代码,大部分时候只需要通过头文件的函数声明和参数定义,就能直接使用这个函数了,再根据自身需要去函数定义中查看具体的代码细节。目前我是按以下格式编写的代码的
image

不知道为啥从VsCode复制过来的代码的缩进会乱掉,自己按需要修改吧
变量、函数命名参考https://www.cnblogs.com/zhaoo-o/articles/17096785.html

点击查看代码
/*************************************************************************************************************
 *  本文件目录(只需要搜关键词就能直接跳到对应板块)
 *  0、通用功能(根据需要可以设置通用功能模块)
 *  1、xxx功能
 *      1.1、xxx功能分支1
 *          1.1.1、xxx功能分支1_1:实现分支1_1功能所需要的函数(根据需要可以继续分级细化,目的是提高代码可移植性)
 *      1.2、xxx功能分支2
 *	2、yyy功能
 *  3、以此类推....								        
 *
**************************************************************************************************************/
// 在此处添加头文件 #include "xxx.h"


/*************************************************************************************************************
 * 
 *										        外部数据区
 *
**************************************************************************************************************/
// 在此处添加extern变量,尽量使用函数接口获取跨文件数据,不要用extern变量,避免在注释丢失时很难理解该变量的作用


/*************************************************************************************************************
 * 
 *										   内部数据区------宏定义
 *
**************************************************************************************************************/


/*************************************************************************************************************
 * 
 *										   内部数据区------枚举
 *
**************************************************************************************************************/
typedef enum
{
    e_Flag_Sys_Run_Stage_Null = 0,   //系统初始化
    e_Flag_Sys_Run_Stage_Boot_Start, // Boot开始运行
    e_Flag_Sys_Run_Stage_Boot_End,   // Boot运行结束
    e_Flag_Sys_Run_Stage_App_Start,  // App开始运行
    e_Flag_Sys_Run_Stage_Sum         // 枚举成员总数,用于判断数据合法性
} e_FLAG_SYS_RUN_STAGE;              //当前系统的运行状态枚举

/*************************************************************************************************************
 * 
 *										   内部数据区------结构体
 *
**************************************************************************************************************/


/*************************************************************************************************************
 * 
 *										   内部数据区------全局变量
 *
**************************************************************************************************************/
e_FLAG_SYS_RUN_STAGE Flag_Sys_Run_Satage = e_Flag_Sys_Run_Stage_Null; // 记录当前系统的运行状态


/*************************************************************************************************************
 * 
 *										        1、xxx功能
 *										    1.1、xxx功能分支1
 *
**************************************************************************************************************/
#if 1 // 如果分支中的函数比较多不容易查看,也可以增加#if 1用于折叠自定义行数的代码
/*
 * @breif   设置当前系统的运行状态
 * @param	Flag_Sys_Run_Stage_Tmp:需要设置的运行状态(@e_FLAG_SYS_RUN_STAGE)
 * @return	无
 */
void Set_Flag_Sys_Run_Satage(e_FLAG_SYS_RUN_STAGE Flag_Sys_Run_Stage_Tmp)
{
    if (Flag_Sys_Run_Stage_Tmp < e_Flag_Sys_Run_Stage_Sum) // 判断数据合法性
        Flag_Sys_Run_Satage = Flag_Sys_Run_Stage_Tmp;
    else
    {
        // 可以根据需要增加错误提示
    }
}

#endif


/*************************************************************************************************************
 * 
 *										        1、xxx功能
 *										    1.2、xxx功能分支2
 *
**************************************************************************************************************/



posted @ 2023-02-12 20:32  zhaoo_o  阅读(22)  评论(0编辑  收藏  举报