effective c++ 条款3 尽可能使用const

将某些东西声明为const可以帮助编译器侦测出错误用法,const可以被施加在任何作用域的对象,函数参数,函数返回类型。

const 出现在星号左边,被指物是常量。

const 出现在星号右边,指针自身是常量。

char *p = greeting;      //non-const pointer, non-const data

const char* p = greeting; //non-const pointer, const data

char* const p = greeting; //const pointer,non-const data

const char* const p = greeting ;//const pointer,const data

 

std:vector<int> vec;

const std:vector<int>::iterator iter = vec.begin;

*iter = 10;   //没问题 改变iter指向的事物

++iter;  //错误,iter 本身是个const

std:vector<int>::const_iterator citer = vec.begin();

*cIter = 10;   //错误 citer是个const

++cIter;   //没问题,改变citer

 

posted on 2020-09-23 00:51  123_123  阅读(113)  评论(0编辑  收藏  举报