| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2541 人关注过本帖
标题:[讨论]const和define哪个好?!
只看楼主 加入收藏
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
结帖率:74.19%
收藏
 问题点数:0 回复次数:13 
[讨论]const和define哪个好?!

刚看一本C++的书 说现在很多程序员在设置常量时喜欢用const不喜欢用define我对此深表质疑!
书上说用define可能会引起编译上的错误 (其他的什么也没说)
我想知道大家对此有什么感想

搜索更多相关主题的帖子: define const 常量 
2007-01-31 15:12
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 

同意书上的看法.
我觉得最好用const.(常量)
顶~~~~~~~`


~~我的明天我知道~~
2007-01-31 15:21
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 

为什么
const是占内存的 而define不占啊

2007-01-31 15:25
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
是这样的:例如 #define Max=200;
虽然宏常量定义和const定义的常量表面上相似,但功能上存在一 定的差别。宏定义的常量是一种纯粹的置换关系,当编译预处理时遇到#define 指令,便以200替代Max,它没有数据类型;而采用const定义的常量具有数据类型特征。定义数据类型的常量便于编译系统进行数据类型检查,使程序可能出现的错误更容易排除。因此与#define相比,const定义常量削除了程序的不安全性。

~~我的明天我知道~~
2007-01-31 16:21
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 
以下是引用pinglideyu在2007-1-31 16:21:59的发言:
是这样的:例如 #define Max=200;
虽然宏常量定义和const定义的常量表面上相似,但功能上存在一 定的差别。宏定义的常量是一种纯粹的置换关系,当编译预处理时遇到#define 指令,便以200替代Max,它没有数据类型;而采用const定义的常量具有数据类型特征。定义数据类型的常量便于编译系统进行数据类型检查,使程序可能出现的错误更容易排除。因此与#define相比,const定义常量削除了程序的不安全性。

为了内存我宁可冒危险
从我的经验上说这点危险很容易避免 它的危险程度并不高
在使用复杂一点的宏时注意一下就好了

2007-01-31 16:26
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
其实在实际生活中我并没有注意到这一点的。
不过,我还是想建议你用后一种。
顶~~~~~~~`

~~我的明天我知道~~
2007-01-31 16:27
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 

我想书上的意思是:如果是少量常量可以用define
大量的为了避免错误应该用const
那你想想 常量越多用const就越占内存了
所以从什么角度来说
我认为都要用define 只要在做宏定义是注意着点就没事

2007-01-31 16:33
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
这样的话,我可以赞同你的观点。
顶~~~~~~~~~

~~我的明天我知道~~
2007-01-31 16:35
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 

那就把这个问题放一放
去帮我找找哪有压缩文件的算法去吧

2007-01-31 16:37
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
收藏
得分:0 

现在看看别人对这个问题有什么看法

2007-01-31 16:38
快速回复:[讨论]const和define哪个好?!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029715 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved