c++/c 的变量
一个好的命名规则可以让你的代码更加直白易读,甚至在你时隔很久后再翻看曾经写的代码,也能很快知道代码大致的思路和功能。而大厂面试中也往往细节决定成败,很多面试官一看你手写代码时的命名规则,就知道你的大致水平和上限,所以一个优秀的程序员一定要养成良好的代码习惯。
基础——书上的命名规则:
1、变量名只能是字母(A-Z,a-z)和数字(0-9)或者下划线(_)组成。
2、第一个字母必须是字母或者下划线开头。
3、不能使用C++关键字来命名变量,以免冲突。
4、变量名区分大小写。
以上四点,是最基础的命名规则,也是每本书上都会写的。当然这也只是新手小白需要掌握的。进阶就需要在以下的几点通用的命名规则下,形成自己的命名风格。
进阶
一、 用最短字符表示最准确的意义。
二、 使用变量前缀。前缀经常表示其类型
整型前缀
int nId; //int前缀:n
short sId; //short前缀:s
浮点型前缀
float fValue; //float前缀:f
double dValue; //double前缀:d
字符型前缀
char chChar; //char前缀:ch
string strPath; //string字符串前缀:str
布尔型前缀
bool bIsOK; //bool类型前缀:b
指针型前缀
char * pPath; //指针前缀:p
数组前缀
int arrnNum; //数组前缀:arr
CString arrstrName; //数组前缀+类型前缀+名称
三、全局变量一律以g_开头,后面为变量,变量同时还要加前缀。(global)
int g_ID;
类的成员变量以m_开头,后面为变量,变量同时还要加前缀。(member)
CString m_strName; //m_开头+类型前缀+名称
常量以c_开头,同上
const int c_Number;
静态变量以s_开头,同上
static int s_Index;
四、结构体,为保证C和C++兼容,采用typedef语句,并且结构体类型全部大写,以T_开头,指针形式以PT_开头。
typedef struct tag TSTUDENT
{
int nId;
CString strName;
}STUDENT,*PSTUDENT;
STUDENT tXiaoZhang; //完整定义结构体
类命名规则
类型命名每个单词首字母大写,不含下划线,以名词形式。比如: MyPalyerManager
对于所有类型命名一样,类结构体,枚举,类定义都是如此,比如:MyExcitingEnum
类名通常可以以C开头
函数命名规则
常规函数每个单词首字母大写,使用命令式语气,比如:OpenFile() CheckFileName(),
而存取函数或短小的内联函数使用小写加下划线,且与访问变量相吻合,比如 set_num_errors();
一般情况,常用func()
class Player{
public:
void set_player_id(){return player_id_=player_id;}
int get_player_id() const{return player-id_;}
private:
int palyer_id_;
};
宏变量命名规则
如果用到宏,全大写加下划线
例,define PI_ROUND 3.0
个人习惯
循环语句中常用:i,j,k
函数形参中:resource:来源,输入; destination:目的地,输出
函数名:func()
普通变量:a,b,c 普通值:value=val
长度:length==len 数组: array==arr
元素、数据:elem data
user用户;flag标记(通常布尔变量);num数量=n;