[c++]const使用
来源:互联网 发布:www.python.org 编辑:程序博客网 时间:2024/06/11 14:05
参考effective c++
1. 与指针配合
char * str="Hello";const char * p = str;//指向常量的指针p[0]='h'; //wrongp="Hi"; //Okchar const * pp=str;//同上 只关心const相对于 * 位置char * const cp=str;//指针常量 不允许指向其他的地址cp[0]='h'; //Ok 此处运行有错误 "Hello"编译时 常量 赋值出错cp="Hi"; //wrongconst char * const pp=str;
2. 修饰函数参数或返回值
class Widget;const Widget operator=(const Widget& lhs,const Widget& rhs);//防止 if((a*b)=c)这样的暴行//= *= += -=等符合运算符都需要返回const
3. 类中修饰函数 const函数
//提供const函数的原因//1. 供const对象调用//2. 使接口更容易被理解 接口是否可以改变对象class MyString{private:char* str;const char& operator[](unsigned int i) const{return str[i];}char& operator[](unsigned int i){return const_cast<char&>(static_cast<const Mystring&>(*this)[i]);//避免代码重复}}
0 0
- C语言const使用
- C语言const使用
- C/C++ const使用
- [c++]const使用
- 【C++】尽可能使用const
- C语言中的CONST使用
- C中CONST的使用
- C中CONST的使用
- C中CONST的使用
- C中CONST的使用
- C中CONST的使用
- C中CONST的使用
- const在C中的使用
- const在C中的使用
- c/c++ const使用心得
- C中CONST的使用
- 【Effective C++】const的使用
- c语言const常量使用
- AndroidStudio下gradle的入门介绍与使用
- 高效加载大图
- ajax get,post,ajax基础使用
- CGAL FAQ
- iOS7以后电池状态栏颜色设置
- [c++]const使用
- opencv3.X如何使用nonfreee包
- Android滑动切换页面Tab文字颜色发生渐变效果
- DB2获取CHAR字段数据的数据长度方法
- java synchronized 理解
- android-修改TextView中部分文字的颜色
- linux下逻辑地址-线性地址-物理地址图解
- Intent和PendingIntent的区别
- Caffe 深度学习框架上手教程