C/C++变量命名规则

2023-05-16

变量命名规则是为了增强代码的可读性和容易维护性。以下为C++必须遵守的变量命名规则:

1、 变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。

2、 第一个字母必须是字母或者下划线开头。

3、 不能使用C++关键字来命名变量,以免冲突。

4、 变量名区分大小写。

 

变量命名规则:

一、 用最短字符表示最准确的意义。

二、 使用变量前缀。

1、 整型前缀

int nId;  //int前缀:n
short sId;  //short前缀:s
unsigned int unId  // unsigned int 前缀:un
long lId;  //long前缀:l

2、 浮点型前缀

float fValue;  //float前缀:f
double dValue;  //double前缀:d

3、 字符型前缀

char chChar;  //char前缀:ch

4、 字符串前缀

char szPath;  //char字符串前缀:sz
string strPath;  //string字符串前缀:str
CString strPath;  //MFC CString类前缀:str

5、 布尔型前缀

bool bIsOK;  //bool类型前缀:b
BOOL bIsOK;  //MFC BOOL前缀:b

6、 指针型前缀

char *   pPath;  //指针前缀:p

7、 数组前缀

int arrnNum;  //数组前缀:arr
CString arrstrName;  //数组前缀+类型前缀+名称

8、 结构体前缀

STUDENT tXiaoZhang;  //结构体前缀:t

9、 枚举前缀

enum emWeek;  //枚举前缀:em

10、 字节的前缀

BYTE byIP;  //字节前缀:by

11、 字的前缀

DWORD dwMsgID;  //双字前缀:dw
WORD wMsgID;  //单字前缀:w

12、 字符指针前缀

LPCTSTR ptszName;  //TCHAR类型为ptsz
LPCSTR pszName;  //pcsz
LPSTR pszName;  //psz

13、 STL容器前缀

vector vecValue;  //vector容器前缀:vec

14、 RECT矩形结构前缀

RECT rcChild;  //rc
CRECT rcChild/  //rc

15、 句柄前缀

HWND hWndDlg;  //h
HBRUSH hBr;  //h
HPEN hPen;  //h
HBITMAP hBmpBack;  //h

16、 Windows颜色前缀

COLORREF crFont;  //cr

17、 Windows DC前缀

CDC dcClient;  //dc

三、 类的成员变量以m_开头,后面为变量,变量同时还要加前缀。

CString m_strName;  //m_开头+类型前缀+名称

四、 定义一个变量,为了简化,在不影响变量意义的情况下,可仅仅使用前缀。

RECT rc;

五、 全局变量一律以g_开头,后面为变量,变量同时还要加前缀。

int g_ID;  //g

六、 定义结构体,保证C和C++兼容,采用typedef语句,并且结构体类型全部大写,以T_开头,指针形式以PT_开头。

typedef struct tag TSTUDENT
{
int   nId;
CString  strName;
}STUDENT,*PSTUDENT;
STUDENT   tXiaoZhang;  //完整定义结构体

七、 变量由多个单词组成,则每个单词的首个字母大写。

int nStudentID;
CString strStudentName;

八、 定义一个类以C或者T做为类名前缀。

class CMyListCtrl;
class TMyListCtrl;

九、 MFC控件绑定值类别或者控件类类别,需要以m_开头并且加前缀。

CEdit m_EDT_strValue;  //Edit绑定控件类别
CListBox m_LB_nName;  //ListBox
CListCtrl m_LC_Name;  //ListCtrl;
CComboBox m_CB_Name;  /ComboBox

十、 控件ID尽量简化并表明控件类型和意义。

Button   IDC_BNT_NAME;
Edit  IDC_EDT_NAME;
ListBox  IDC_LB_NAME;
ListCtrl  IDC_LC_NAME;
ComboBox  IDC_CB_NAME;

 

文章转自:http://blog.sina.com.cn/s/blog_8a7012cf01017h9p.html

转载于:https://www.cnblogs.com/laijingwu/p/4297996.html

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

C/C++变量命名规则 的相关文章

随机推荐

  • 使用docker搭建开发环境

    我的主力机是windows windows下面有太多提升效率的软件 但是开发的时候不得不使用linux 就单单开发而言 我还是喜欢使用linux 所以就造成了我得在windows下面使用虚拟机 这是最开始的办法 后面得知有vagrant这个
  • ROS的单线程Spinning和多线程Spinning

    单线程Spinning ros spin 是最简单的单线程自旋 它会一直调用直到结束 用法 ros spin 另一个单线程spinning是ros spinOnce 它定期调用等待在那个点上的所有回调 用法 ros spinOnce 简单的
  • antd 的form 表单怎么回显数据_antd Form表单的initialValue问题

    在initial中是有初始值的 xff0c 但是却不显示初始值 xff0c 请大佬解答一下这个问题 const formItem 61 type 3 label 39 柜子编号 39 name 39 ID 39 width 39 150px
  • echarts 与 highcharts

    一 xff0e 简介 echarts echarts是百度公司前端开发的一个图表库 xff0c 2013年发布第一版 xff0c 主要采用canvas画图 xff0c 目前版本3 8 4 xff1b 完全免费 xff1b highchart
  • c语言不同源文件变量,我在哪里可以在c程序中声明全局变量,无论是在头文件还是源文件中...

    本问题已经有最佳答案 xff0c 请猛点这里访问 嗨 xff0c 我是一个C 43 43 开发者 xff0c 现在我正在做C编程 我的问题是 xff0c 在C程序中 xff0c 哪个地方更好地声明全局变量 头文件或源文件 如果我的全局变量未
  • ***网址大全

    网址大全 最全的 国内 基地 http www hackbase com 帝国 http www darkup com 中国 联盟 http www chinahacker com起点 网络 http www qdhack com 边缘 h
  • 监控硬盘容量计算

    如何快速的计算摄像头一天存储量 摄像机的码流即监控视频流的带宽 xff0c 分为主码流和子码流 xff0c 主码流用来存储 xff0c 子码流一般用来预览 xff0c 所以录像回放时大家看到的视频质量要高于预览时看到的 在不同分辨率 帧率以
  • 【原】Hadoop伪分布模式的安装

    Hadoop伪分布模式的安装 环境参数 1 Host OS xff1a Win7 64bit 2 IDE xff1a Eclipse Version Luna Service Release 2 4 4 2 3 虚拟机 xff1a VMwa
  • 背景建模技术(四):视频分析(VideoAnalysis)模块

    视频分析模块主要包含两个函数 xff0c 一个是VideoAnalysis setup xff08 xff09 xff0c 其主要功能就是确定测试的视频是视频文件或摄像头输入亦或是采用命令行参数 xff1b 第二个函数是VideoAnaly
  • ubuntu 安装docker + seagull实现图形化管理

    环境 xff1a ubuntu 14 04 server 通过Docker源安装最新版本 要安装最新的 Docker 版本 xff0c 首先需要安装 apt transport https 支持 xff0c 之后通过添加源来安装 sudo
  • Ethzasl MSF源码阅读(1):程序入口和主题订阅

    关于IMU融合知乎上的一篇问答 xff1a 有哪些开源项目是关于单目 43 imu做slam的 xff1f Ethz的Stephen Weiss的工作 xff0c 是一个IMU松耦合的方法 1 程序入口 xff1a ethzasl msf
  • 自动化运维的5大好处

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 努力解决企业IT日益增长的运维挑战 xff0c 大多数运维团队面临的最核心问题在于 如何用更少的资源完成更多工作 自动化运维则是这一问题的理想解决方案 xff0c 特别是在
  • UP Board 串口使用心得

    前言 原创文章 xff0c 转载引用务必注明链接 本文使用Markdown写成 xff0c 为获得更好的阅读体验和正常的图片 链接 xff0c 请访问我的博客 xff1a http www cnblogs com sjqlwy p up s
  • [转]Linux守护进程基础

    为什么80 的码农都做不了架构师 xff1f gt gt gt 1 守护进程中涉及到的基本概念 1 1进程组 1 1 1 进程组基本概念 进程组是一个或多个进程的集合 xff0c 可以接收来自同一个终端的各种信号 每运行一个程序或是命令都将
  • Spring Cloud核心组件详解

    转自 xff1a 作者 xff1a 石杉的架构笔记 链接 xff1a https juejin im post 5be13b83f265da6116393fc7 来源 xff1a 掘金 著作权归作者所有 商业转载请联系作者获得授权 xff0
  • unity 3d开发的大型网络游戏

    unity 3d开发的大型网络游戏 一 总结 1 unity的官网 上面应该有游戏列表 2 unity3D是很好的3d游戏引擎 xff0c 也支持2d xff0c 也能做很多画面精良的3A级游戏 3 范围 xff1a 电脑游戏 xff0c
  • 多系统电脑切换系统操作步骤

    1 电脑搜索栏输 msconfig 会出现下图 2 点引导 xff0c 多个系统的话 xff0c 引导这里显示的是多条信息 3 切换系统 在引导框中选中自己要切换的系统 xff0c 然后点击设为默认值 xff0c 再点应用 xff0c 再确
  • STM32标准外设库、 HAL库、LL库

    工作以来一直使用ST的STM32系列芯片 xff0c ST为开发者提供了非常方便的开发库 到目前为止 xff0c 有标准外设库 STD库 HAL库 LL库 三种 前两者都是常用的库 xff0c 后面的LL库是ST最近才添加 xff0c 目前
  • 图形算法可视化

    最近看了一些和图形 算法可视化相关的文章和代码 xff0c 挺有意思 xff0c 于是自己也学着做了些东西 迷宫生成算法 迷宫小时候玩过 xff0c 但从来没琢磨过迷宫是怎么设计的 xff0c 以为就是有人慢慢画出来的 看过网上这篇文章后
  • C/C++变量命名规则

    变量命名规则是为了增强代码的可读性和容易维护性 以下为C 43 43 必须遵守的变量命名规则 xff1a 1 变量名只能是字母 xff08 A Z xff0c a z xff09 和数字 xff08 0 9 xff09 或者下划线 xff0