ITPub博客

首页 > IT职业 > IT职场 > 物联网学习教程—const用法的体会

物联网学习教程—const用法的体会

IT职场 作者:千锋教育官方 时间:2019-08-22 18:21:14 0 删除 编辑

看到很多的朋友都有聊过 const 用法的体会,下面挺好小编就给大家做一个具体的介绍吧!我觉得写的挺不错的,分享给大家!

const 主要是为了程序的健壮型 , 减少程序出错 .
最基本的用法 :
const int a=100;        b
的内容不变 ,b 只能是 100 也就是声明一个 int 类型的常量 (#define b =100)
int const b=100;        //
和上面作用一样

const 指针和引用一般用在函数的参数中
int* m = &a;   //
出错 , 常量只能用常指针
int c= 1;const int*pc = &c;//
常指针可指向常量

const int* pa = &a;     // 指针指向的内容为常量 ( 就是 b 的值不变 )
int const *a = &b;     //
指针指向的内容为常量 ( 就是 b 的值不变 )*p=3//error
int* const a = &b;     //
指针为常量 , 不能更改指针了如 a++ 但可以改值 *p=3;

从这可以看出 const 放在 * 左侧修饰的是指针的内容 ,const 放在 * 右侧修饰的是指针
本身 .

const 引用的用法和指针一样
int const &  a=b;         
和指针一样
const int& a=b;         
和指针一样
但没有 int& const a=b 的用法因为引用不能做移位运算,但只是出个 warning

const int* const a = &b;   // 综合应用 , 一般用来传递多维的数组
类如:  char* init[] = {"Paris","in the","Spring"};
void fun(const int* const a){}
fun(init)//
保护参数不被修改

int A(int)const;      // 是常函数,只能用在类中,调用它的对象不能改改变成员值
const int A();     //
返回的是常量 , 所以必须这么调用    cosnt int a=A();
int A(const int);  //
参数不能改值 , 可用在任意函数
int A(const int*);
....
int height() const;//
常函数只能由常函数调用
int max(int,int) const;
int Max = max(height(),height());

 

const int* pHeap = new int;
delete pHeap;
p = NULL;//
出错
我的解决办法是强制类型转换
const int*   pHeap = new int(1);
delete (int*)pHeap;
pHeap = NULL;

目前我就遇到这些问题,那位还有补充的吗?有的话大家可以留言哦!

 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69914734/viewspace-2654645/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
千锋IT职业教育——做真实的自己 用良心做教育

注册时间:2019-03-28

  • 博文量
    140
  • 访问量
    92342