Chinaunix首页 | 论坛 | 博客
  • 博客访问: 84113
  • 博文数量: 19
  • 博客积分: 546
  • 博客等级: 中士
  • 技术积分: 232
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-10 00:07
文章分类

全部博文(19)

文章存档

2014年(1)

2013年(3)

2012年(2)

2011年(4)

2010年(9)

我的朋友

分类: C/C++

2013-06-14 23:58:09

(1) 编译器处理方式不同
     define宏是在预处理阶段展开;
     const常量是编译运行阶段使用;

(2) 类型和安全检查不同
     define宏没有类型,不做任何类型检查,仅仅是展开;
     const常量有具体的类型,在编译阶段会执行类型检查;

(3) 存储方式不同
     define宏仅仅是展开,有多少地方使用,就展开多少次,不会分配内存;
     const常量会在内存中分配(可以是堆中也可以是栈中);
阅读(2085) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~