const 的用法(全面得一匹)
2017-07-09 14:33
99 查看
1.const的用法:
1.修饰变量
const int a=10;
a=20; //错误,不可被修改
2.修饰函数的参数
保护传参时参数不被修改
3.修饰函数的返回值
指针传递:
函数const char * GetString(void);
正确的用法是: const char *str = GetString(); //写为char *str = GetString();将出现编译错误
值传递:由于函数会把返回值复制到外部临时的存储单元中,加const 修饰没有任何价值。
例如:不要把函数int GetInt(void) 写成const int GetInt(void)。
4.修饰指针
const int *A; 或 int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
int *const A; //const修饰指针A, A不可变,A指向的对象可变
const int *const A; //指针A和A指向的对象都不可变const int *A; 或 int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
5.类中使用const修饰函数防止修改非static类成员变量
class
{
public:
void fun() const //加const修饰
{
a = 10; //出错,不可修改非static变量
b = 10; //对,可以修改
}
private:
int a ;
static int b;
}
1.修饰变量
const int a=10;
a=20; //错误,不可被修改
2.修饰函数的参数
保护传参时参数不被修改
3.修饰函数的返回值
指针传递:
函数const char * GetString(void);
正确的用法是: const char *str = GetString(); //写为char *str = GetString();将出现编译错误
值传递:由于函数会把返回值复制到外部临时的存储单元中,加const 修饰没有任何价值。
例如:不要把函数int GetInt(void) 写成const int GetInt(void)。
4.修饰指针
const int *A; 或 int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
int *const A; //const修饰指针A, A不可变,A指向的对象可变
const int *const A; //指针A和A指向的对象都不可变const int *A; 或 int const *A; //const修饰指向的对象,A可变,A指向的对象不可变
5.类中使用const修饰函数防止修改非static类成员变量
class
{
public:
void fun() const //加const修饰
{
a = 10; //出错,不可修改非static变量
b = 10; //对,可以修改
}
private:
int a ;
static int b;
}
相关文章推荐
- const 用法全面解析
- const用法全面回忆
- 关于const 作用和用法 C++ const 的全面总结
- 【C++】const 常引用的用法
- const C++ 用法总结
- C++中const用法
- CONST的用法
- const 用法总结
- const用法
- const 用法总结c++
- Linux gdb调试器用法全面解析
- const、static、extern的用法
- Android Intent的几种用法全面总结
- const的用法(用在函数前面与后面的区别)
- const 用法
- C++中const用法总结
- 关于C++ const 的全面总结
- const用法总结以及构造函数、析构函数、拷贝构造函数的深入剖析
- 标准C++中Const的详细用法总结
- const的用法,特别是用在函数后面