前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【答疑解惑】define和const区别

【答疑解惑】define和const区别

作者头像
程序员互动联盟
发布2018-03-14 11:30:06
6390
发布2018-03-14 11:30:06
举报

在c/c++程序中我们经常使用到它们,由于使用比较频繁,我们就来做一下对比它们各自的作用。从以下几个方面来说明

1、编译器处理方式不同

  define宏是在预处理阶段展开。

  const常量是编译运行阶段使用。

2、类型和安全检查不同

  define宏没有类型,不做任何类型检查,仅仅是展开。

  const常量有具体的类型,在编译阶段会执行类型检查。

3、存储方式不同

  define宏仅仅是展开,有多少地方使用,就展开多少次,不会分配内存。

  const常量会在内存中分配。

const 可以节省空间,提高执行效率,避免不必要的内存分配。

const 修饰函数的返回值、修饰类的成员函数(任何不需要修改数据成员的函数都应该使用const修饰)。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-08-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员互动联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档