aihot  2020-11-12 09:23:24  OpenCV |   查看评论   
对于形似函数的宏,最好改用inline函数替换#define

条款03:尽可能使用const

STL的迭代器是以指针为根据塑模出来,所以迭代器的作用就像个T*的指针。声明迭代器为const就像声明指针为const一样(即声明一个T*const指针),表示这个迭代器不得指向不同的东西,但它所指的东西的值是可以改动的。如果希望迭代器所指的东西是不可被改动的,需要的是const_iterator。

vector<int> vec;  const vector<int>::iterator = vec.begin();  *iter = 10;        // 没问题,改变iter所指物  ++iter;            // 错误!iter是const  vector<int>::const_iterator cIter = vec.begin();  *cIter = 10;    // 错误!*cIter是const  ++cIter;        // 没问题,改变cIter

请记住

 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自Effecvtive C++笔记:让自己习惯C++

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]