C++学习(1)--基础知识(1)--一些基本的格式

本来想写道csdn里面去,可是连开两个blog也够麻烦的,先写到这里吧。
宗旨就是写出来的一定要是自己弄明白的。弄不明白的写在这里是自己骗自己。
 

*类名和函数名用大写字母开头的单词组合而成

*变量和参数用小写字母开头的单词组合而成

*常量全用大写的字母,用下划线分割单词

*静态变量加前缀s_

*全局变量加前缀g_

*类的数据成员加前缀m_(可避免数据成员与成员函数的参数同名)

 

*不可将布尔变量直接与TRUE,FALSE或者1,0进行比较。

  假设布尔变量名字为flag,它与零值比较的标准if语句如下:

      ifflag)  //表示flag为真

       if(!flag)//表示flag为假

以下用法都属于不良风格

if (flag == TRUE)

if (flag == 1 )

if(flag == FALSE)

if(flag == 0 )

 

*应当将整型变量用“==”或“!=”直接与0比较。

if (0 == value)

if (0 != value)

不可模仿布尔变量的写法

*不可将浮点变量用“==”或“!=”与任何数字比较

应当转化成“〉=”或“〈=”形式

if ((x>=-EPSINON) && (x<=EPSINON))

其中EPSINON是允许的误差(即精度)

 

*应当将指针变量用“==”或“!=”与NULL比较

 

if (p == NULL)

if (p != NULL)

 

const 常量完全取代宏常

 

不能在类声明中初始化const数据成员。

 

建立在整个类中都恒定的常量:

用类中的枚举常量来实现

class A

{

       enum { SIZE1 = 100, SIZE2 = 200};

       int array1[SIZE1];

int array1[SIZE2];

}

 

*参数的书写要完整

void SetValue(int width, int height);

float GetValue(void);

 

*如果参数是指针,且仅作输入用,则应在类型前加const,以防止该指针在函数体内被意外修改。

void StringCopy(char *strDestination, const char *strSource);

 

*用malloc或new申请内存后,应该立即检查指针指是否为NULL.防止使用指针值为NULL的内存。

 

*不要忘记为数组和动态内存赋初值。防止将未被初始化的内存作为右值使用。

 

*避免数组或指针的下标越界,特别要当心发生多一或少一的操作

 

*动态内存的申请与释放必须配对,防止内存泄露。

 

*用free或delete释放了内存之后,立即将指针设置为NULL,防止产生“野指针 

你可能感兴趣的:(C/C++)