| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1369 人关注过本帖
标题:询问一个编程习惯的问题
只看楼主 加入收藏
BBGASJ
Rank: 1
等 级:新手上路
帖 子:74
专家分:0
注 册:2007-8-15
结帖率:100%
收藏
 问题点数:0 回复次数:11 
询问一个编程习惯的问题
我在看C++ PRIMER PLUS时,中文版第22页有这么一种思想,就是在C++种,程序员通常是在首次使用声明变量前声明他,而不是把所有声明的变量放在一起。

    请问各位如何看待这种编程习惯?
    谢谢!
搜索更多相关主题的帖子: 习惯 询问 
2008-09-10 12:18
xyt_bluesky
Rank: 1
等 级:新手上路
威 望:1
帖 子:27
专家分:0
注 册:2008-8-16
收藏
得分:0 
哈哈,如果声明变量时你能考虑到所有的变量,并且到后面的程序中你能记得你声明的了什么变量。那么你把所有变量声明在一起也没有什么。但是,何必呢?我们何不在需要时再声明?所以啊,我个人也是“在首次使用声明变量前声明他”
2008-09-10 12:27
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
我觉得这样会更清晰
还有就是 可以更好的 合理使用内存
在用到时候 再分配内存(不知道是否正确)
个人感觉 还请指教 补充

[[it] 本帖最后由 newyj 于 2008-9-10 12:31 编辑 [/it]]
2008-09-10 12:28
BBGASJ
Rank: 1
等 级:新手上路
帖 子:74
专家分:0
注 册:2007-8-15
收藏
得分:0 
那么再问一下,这种习惯是否适合C?

我所见过的C都是统一放在开头。

Stay Hungry. Stay Foolish.
2008-09-10 12:39
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
[bo][un]newyj[/un] 在 2008-9-10 12:28 的发言:[/bo]
还有就是 可以更好的 合理使用内存
在用到时候 再分配内存(不知道是否正确)

声明语句,不分配内存吧...

2008-09-10 13:09
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
[bo][un]blueboy82006[/un] 在 2008-9-10 13:09 的发言:[/bo]


声明语句,不分配内存吧...

那定义 是否 是用到变量的时候再分配内存呢?
2008-09-10 13:18
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
对于一般的变量,LZ所说的方法自然是没问题的,也是很好的;
它的一个显然的好处是:当源代码很长时,我们在程序中首次见到一个变量,在不清楚它的意义时,不用到文件头的定义里去找(这样很费事...),而是直接在它出现的前几行中找到它的定义就好...(当然,一些很显然的循环变量,意义显然的话,就看个人习惯了...)
但,像类里面的一些东西,这样做有时就会有问题,要注意语法了...像前向声明,友元这些,就得另考虑了...

2008-09-10 13:18
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
回复 6# newyj 的帖子
我们知道,所谓分配内存分为:静态分配和动态分配;
在编译时就分配的,像数组,就是静态分配...
动态分配在程序运行时进行...
而所谓的定义语句,实际上就是为变量分配内存的过程啊...
所以,定义当然要分配内存啦...

2008-09-10 13:25
BlueMouse
Rank: 1
来 自:贵州
等 级:新手上路
威 望:1
帖 子:52
专家分:0
注 册:2008-9-6
收藏
得分:0 
我个人认为呢!声明在开始每个模块的开始处最好!因为知道那个变量做什么用了之后再往下看代码就容易多了!

很难想象你本来看代码好好的冒出一个变量来不知道做什么用的!呵呵!

但其实在那都一样! 最重要的是给变量取我好名字或者写个明白的注释!
2008-09-10 13:30
xmnathan
Rank: 2
等 级:论坛游民
威 望:1
帖 子:73
专家分:10
注 册:2008-8-30
收藏
得分:0 
全局的就只能写前面咯  寿命就在一个模块内的就写模块开头咯
2008-09-10 15:16
快速回复:询问一个编程习惯的问题
数据加载中...
 
   



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

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