常量
   常量只能是一个右值,也就说是一个不能改变的值。
   const int a = 100;
   const 表明将一个对象转换成一个常量,而常量是不可以修改的,所以定义是必须初始化。
常量指针
int b = 3; const int* p = &b;//常量指针就是说*p的值不可以改变,而p可以改变 
指针常量
char* const p = “ac3d”;//指针常量就是说*p的值可以改变,而p的值不可以改变
指向常量的指针常量
int a = 2; const int* const p = &a;//指向常量的指针常量也就是说*p和p都不可以被改变
数组名也相当于常量指针
int arr[5];//arr是常量
常量的引用
const int& a = 5;
const和static的区别
const修饰的变量不可以改变
static修饰的变量值可以改变
在类中使用常量的方法
class A
{
static const int a = 3;
enum{a = 3};//但是enum只能用于×××值
}

注意:
不能对常量使用++符号
int arr[5];
arr++;//error