首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

难点!关于VC++ 6.0 CPP文件编译顺序有关问题,如何进行修改和设定

2013-02-24 
难点!关于VC++ 6.0 CPP文件编译顺序问题,怎么进行修改和设定公司最近给了我一份VC++6.0的一个软件的源代码

难点!关于VC++ 6.0 CPP文件编译顺序问题,怎么进行修改和设定
公司最近给了我一份VC++6.0的一个软件的源代码进行学习和增加功能,当时.dsp文件是只读的,同时编译的时候也不是按照字母顺序A.cpp,B.cpp,C.cpp,D.cpp的顺序去编译,当然我也不知道他是怎么做到的。我也不清楚为什么会这样。
后来我增加了一个CPP文件,然后程序叫我保存工作空间,保存后,编译出来的程序运行就会出错,我搞了很久才知道,新保存的工作空间后,改变了编译顺序[最明显的是.dsp文件里面的CPP文件按照字母排列了],同时编译的时候变成了按照字母A.cpp,B.cpp,C.cpp,D.cpp的顺序去编译,导致程序启动的时候,类初始化可能出现了问题,所以我想请问高手或者有了解的朋友们

因为工程很大,没办法进行调整类的初始化等设定,头文件就上百个了。

1.如何保存工作空间[.dsp文件]的时候,不让他随意改变编译顺序,沿用以前的编译顺序,而不是自作主张的变成A.cpp,B.cpp,C.cpp,D.cpp的顺序去保存
2.或者说怎么设定编译顺序呢,让编译器按照我设定的顺序去编译CPP代码,知道的朋友可以告诉我具体的步骤吗
谢谢!
[解决办法]
 用#pragma init_seg 这个编译指令控制編譯單元中对象的初始化顺序。
[解决办法]
lz却是想要确定vc6的编译顺序,可以看下makefile
VC6.0命令行编译及使用makefile编译的方法  
makefile_如何分析VC6导出的makefile文件
[解决办法]
那有那么麻烦,自己改dsp文件里面的顺序就是了用ue打开编辑就可以了
[解决办法]
也许是事先设置了环境变量DIRCMD

[解决办法]
我也一直认为*.cpp的编译顺序不会影响编译是否成功。
求举例,求科普。。。。
[解决办法]
重构,每个全局类增加init函数,在函数里面进行初始化成员变量
然后在程序入口点处按需要的顺序显式调用各个类的init()

[解决办法]
遇到了楼主同样的问题,只能手动编译某个文件,才能生成最后的程序,否则一堆错误~
[解决办法]
写一个文件,把CPP文件按你要编译的次序写进去,工程中只放这一个文件就可以了
#include "b.cpp"
#include "a.cpp"
........

热点排行