小黑屋
原帖由 xphi 于 2010-11-6 14:04 发表 常常要考虑“修改一个头文件后重新编译时,只选择性地编译那些与该头文件有关的源码文件”这样的问题,说明代码组织或者结构设计多半有问题
查看详细资料
TOP
原帖由 利多卡因 于 2010-11-6 19:22 发表 说实话这个实在是真不能接受了。。。我觉得我被侮辱了,随便找个像样的项目,开关某些宏,这些操作都是改在头文件里的啊
原帖由 xphi 于 2010-11-6 19:44 发表 开关某些宏恰好应该是放在Makefile里面,在不同的规则下由gcc的开关传进去的,过了调试期后,需要发布版的时候才实际写进头文件里面去,每次调试make的时候都要修改头文件,等待缓慢的编译无数源文件,那还要头文 ...
原帖由 利多卡因 于 2010-11-6 19:50 发表 我明白了,你并不发布源码,只发布二进制文件,用户看不见源码,所以用户不会修改头文件
原帖由 利多卡因 于 2010-11-6 20:07 发表 你把宏作为编译参数传入源码比用头文件传入到底高明在什么地方呢?连编译参数都修改的话,难道还不用重新编译?我实在是困惑。宏是在预处理阶段就处理掉的,远远早于编译流程
原帖由 利多卡因 于 2010-11-6 20:28 发表 说来说去还是鸡同鸭讲啊,你没有接触过裸板程序 我再举个例子好了,就拿debug开关来说,假设我们现在只调试某一个模块,所以只需要打开这个模块的debug开关就可以了,这当然是代码中该模块设的宏。你说这种情况下 ...
原帖由 利多卡因 于 2010-11-6 20:41 发表 其实拿linux kernel作为例子就更好说了,比如说spin_lock这个宏,在单核非抢占的情况下,丫就是一个空宏,只有在多核或开抢占的情况下spin_lock才是有意义的。那么这个宏的内容本身就是被宏所选择的,而且这个选择权 ...
魔王撒旦
原帖由 eos 于 2010-11-3 20:54 发表 如果不玩游戏的话这个系统很不错的,win的软件可以通过wine或者虚拟机来实现。linux对内存的利用率很高的。