c++之const小结-使用注意
2017-06-24 10:27
417 查看
尽可能的使用const。
1. 尽量的以const、enum、inline替换掉#define。#define是预处理,对于形似函数的宏,最好改用inline函数替换#define,即“宁可以编译器替换预处理器”。因为#define不被视为语言的一部分,那正是它的问题所在。
2. 注意,下面两种写法意义相同:
void f1( const Widget* pw);
void f1( Widget* const pw);
如果变量不应该被改变,就一定要定义成const,不变的一定要说出来。
令函数返回一个常量值,可以降低后面写代码出现的错误,提高了安全性和高效性。
3. 注意区分const 成员函数和 以const为返回类型的函数
public class A
{
public:
A();
const void getName();//以const修饰函数的返回值
void getAge() const; //以const修饰成员函数,表示不能修改类中的成员变量。
void countNum(const int num);//const修饰函数参数表示该参数不能在函数体类被修改,只是该参数不可被修改,注意与const修饰成员函数区分开
}
将某些东西声明为const可帮助编译器侦测出错误语法(用法)。
1. 尽量的以const、enum、inline替换掉#define。#define是预处理,对于形似函数的宏,最好改用inline函数替换#define,即“宁可以编译器替换预处理器”。因为#define不被视为语言的一部分,那正是它的问题所在。
2. 注意,下面两种写法意义相同:
void f1( const Widget* pw);
void f1( Widget* const pw);
如果变量不应该被改变,就一定要定义成const,不变的一定要说出来。
令函数返回一个常量值,可以降低后面写代码出现的错误,提高了安全性和高效性。
3. 注意区分const 成员函数和 以const为返回类型的函数
public class A
{
public:
A();
const void getName();//以const修饰函数的返回值
void getAge() const; //以const修饰成员函数,表示不能修改类中的成员变量。
void countNum(const int num);//const修饰函数参数表示该参数不能在函数体类被修改,只是该参数不可被修改,注意与const修饰成员函数区分开
}
将某些东西声明为const可帮助编译器侦测出错误语法(用法)。
相关文章推荐
- C\C++: const的使用注意
- c++ const使用小结
- C\C++: const的使用注意
- 从零开始学C++之对象的使用(三):static 与单例模式、auto_ptr与单例模式、const 用法小结、mutable修饰符
- 从零开始学C++之对象的使用(三):static 与单例模式、auto_ptr与单例模式、const 用法小结、mutable修饰符
- C++学习笔记(二):使用const、static类成员的注意事项
- C++中的'&'和const的使用注意事项!
- C++中的const使用小结
- C++中const变量使用注意
- c++中const类型的使用与注意事项
- [C++]const、typedef联合使用注意
- C++使用小结(持续更新中)
- 【转贴】使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast
- 关于C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性。
- C++中 Const用法小结(转载)
- 再看C++(四)------const的终极使用
- C/C++中 const,extern,static,volatile的使用
- C++ 中 const 关键字使用详解
- [C++] 使用const提高函数的健壮性
- (转)C/C++中 const,extern,static,volatile的使用