C++基础(4)const、define定义常量

1.const修饰符可以对变量进行修饰,指定该变量的值是常量。编译器会对此进行检查,禁止对此常量进行修改。

const unsigned int ARRAY_SIZE1 = 20;

const unsigned int ARRAY_SIZE2 = 12; 

上面两句代码指定了数组长度分别为20和12。

struct Student  //学生结构体
{
		char m_strName[ARRAY_SIZE1];  	//姓名
		char m_strID[ARRAY_SIZE2]; 		//编号
		char m_cSex; 		//性别:'0':男  '1':女
		char m_strMajor[ARRAY_SIZE1]; 	//专业
};

2.使用#define定义常量的不安全性

    double d1 = 2.0;        

    #define C1 d1+d1    ////C1 = d1+d1

    #define C2 C1*C1   ////C2 = d1+d1*d1+d1   错误

3.使用const取代#define

    double d1 = 2.0;          

    const double C1 = d1 + d1;   

    const double C2 = C1 * C1;

4.指向常量的指针和常引用

double sub(const double *dp, const double &rd)
{
	// *dp = 100.5;  //不能修改指向常量的指针所指的内容
	// rd = 12.7;    //不能修改常引用所指变量的值
	return *dp - rd;
}

不能修改指向常量的指针所指向的内容,也不能修改常引用所指变量的值。

猜你喜欢

转载自blog.csdn.net/shenseyoulan/article/details/81178892