您的位置:首页 > 编程语言 > C语言/C++

C++之const的使用

2017-05-16 10:44 239 查看
const是常量意思

常量是不可以被改变的

const int a =1;
int const a =1;


所表示的都是啊a=1;且a不可以被改变

const可以修饰指针

*p是指针所指的数值

 p是指针的地址

所以

如果const位于*的左侧,即指针指向为常量; (const *p)

如果const位于*的右侧,即指针本身是常量。 (*const p)

int a = 10;
const int* p = &a;            // 指针指向的内容不能变
int const* p = &a;            // 同上
int* const p = &a;            // 指针本身不能变
const int* const p = &a;      // 两者都不能变
int const* const p = &a;      // 同上


const还可以修饰引用

int a = 10;
const int& b = a;
int const& b = a;


两种修饰方法相同

const 易错点

int main()
{
double d = 1.2;
const int temp = (int)d;
int &p = temp;
return 0;
}


int main()
{
int const a =3;
int *p =&a;
return 0;
}


编辑器会报错(第5行)(第4行)

因为此行的引用和指针不是常量

而他们又指向常量

其存在修改常量的风险

故编辑器报错
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: