2007年9月8日星期六

程序文件的目录结构

高质量程序设计指南:C++/C语言(第三版)

http://book.csdn.net/ 2007-5-28 20:30:00

C++/C的文件结构和程序版式并不影响功能,也无多少技术含量,但是能够反映出开发者的职业化程度。我们当然希望自己的程序看上去是专业级的。

版式虽然不会影响程序的功能,但是会影响清晰性。程序的版式追求清晰、美观,是程序风格的重要因素。可以把程序的版式比喻为“书法”,好的“书法”可让人对程序一目了然,看得兴致勃勃。程序员们学习程序的“书法”,弥补大学计算机教育的漏洞,实在很有必要。

10.1 程序文件的目录结构

文本框:   图10-1  开发目录结构一 个正在开发中的程序工程不仅包含源代码文件,还包含许多资源文件、数据文件、库文件及配置文件等。理论上,这些文件在磁盘上的存放位置是很自由的,即使是 IDE也没有什么强制规定。但是为了方便于开发与维护,最好有一目了然的组织方式(即目录结构)。例如,我们创建一个C++/C程序工程 TestProj,其文件可以参照图10-1所示的结构来组织。

图10-1中目录的用途如下。

(1)Include目录存放应用程序的头文件(.h),还可以再细分子目录。

(2)Source目录存放应用程序的源文件(.c或 .cpp),还可以再细分子目录。

(3)Shared目录存放一些共享的文件。

(4)Resource目录存放应用程序所用的各种资源文件,包括图片、视频、音频、图标、光标、对话框等,还可以再细分子目录。

(5)Debug目录存放应用程序调试版本生成的中间文件。

(6)Release目录存放应用程序发行版本生成的中间文件。

(7)Bin目录存放程序员自己创建的lib文件和dll文件。

【提示10-1】:

分清楚编译时相对路径和运行时相对路径的不同,这在编写操作DLL文件、INI文件及数据文件等外部文件的代码时很重要,因为它们的“参照物”不同。例如下面的代码行:

#include "..\include\abc.h"

是相对于当前工程所在目录的路径,或者是相对于当前文件所在目录的路径,在编译选项的设置中也有这样的路径。

而下面一行代码:

OpenFile("..\abc.ini");

则是相对于运行时可执行文件所在目录的路径,或者是相对于你为当前程序设置的工作目录的路径。

没有评论: