Effective C++ Item 02-尽量以const、enum、inline替换#define
来源:互联网 发布:科勒有几家网络授权店 编辑:程序博客网 时间:2024/05/18 03:11
Item 02: 尽量以const、enum、inline替换#define(Prefer consts,enums,and inlines to #define)
即以编译器替换预处理器,因为#define不被视为语言的一部分。
Ex: #define ASPECT_RATIO 1.653
ASPECT_RATIO也许没有被编译器看见,于是未进入记号表(symbol table)造成编译错误,而这个错误会提到1.653但不是ASPECT_RATIO,查找起来很困难。
解决办法:const double AspectRatio = 1.653
const替换#define
1、常量指针:const char* const authorName = ...
2、class: static 确保该常量只有一份实体
class GamePlayer{
private:
static const int NumTurns = 5;
int scores[NumTurns];
}
Note:有了const、enum、inline,我们对#define的需求降低了,但并非完全消除,#include仍是必需品,#ifdef/#ifndef可以控制编译 的重要角色。
对于单纯常量,最好用const对象或enums替换#defines
对于形似函数的宏(macros),最好改用inline函数替换#defines
0 0
- 《Effective C++》尽量以const,enum,inline,替换#define
- effective C++:尽量以const、enum、inline替换#define
- Item 02:尽量以const,enum,inline 替换 #define
- Effective C++ Item 02-尽量以const、enum、inline替换#define
- 《Effective C++》条款02:尽量以const,enum,inline替换#define
- 《Effective C++》学习笔记条款02 尽量以const,enum,inline替换#define
- Effective C++:条款02:尽量以const,enum,inline替换#define
- [Effective C++]条款02 尽量以const,enum,inline替换#define
- 读书笔记《Effective C++》条款02:尽量以const,enum,inline替换#define
- <Effective C++>条款02:尽量以const,enum,inline替换#define
- Effective C++ Item 2 尽量以const, enum, inline 替换 #define
- Item 2:尽量以const,enum,inline替换#define【effective C++读书笔记】
- effective c++ 尽量以const enum inline 替换 #define
- Effective C++--条款02:尽量以const,enum,inline替换#define(以编译器替换预处理器)
- 重读经典-《Effective C++》Item2:尽量以const,enum,inline替换#define
- 重读经典-《Effective C++》Item2:尽量以const,enum,inline替换#define
- 重读经典-《Effective C++》Item2:尽量以const,enum,inline替换#define
- 重读经典-《Effective C++》Item2:尽量以const,enum,inline替换#define
- 258 Add Digits
- android 使用DrawerLayout实现滑动抽屉
- 方格填数
- 安卓集训营第六天---JAVA的集合
- Android:LinearLayout布局中Layout_weight的深刻理解
- Effective C++ Item 02-尽量以const、enum、inline替换#define
- 前端代码异常日志收集与监控
- 从键盘输入某个十进制整数数,转换成对应的二进制整数并输出。
- 【bzoj 3832】 [Poi2014] Rally (权值线段树+拓扑排序)
- Android 中创建Java项目的Date的转换工具
- 77.A problem is easy
- WIN7_64搭建CUDA开发环境
- POJ-2828 Buy Tickets【线段树 单点更新】
- POJ 2594 Treasure Exploration-有向图最小路径覆盖&Floyd