#pragma message
Message 参数能够在编译信息输出窗口中输出相应的信息, 这对于源代码信息的控制是非常 重要的。 #Pragma message(“消息文本”) 当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。
#pragma code_seg
另一个使用得比较多的 pragma 参数是 code_seg。 格式如: #pragma code_seg( ["section-name"[,"section-class"] ] ) 它能够设置程序中函数代码存放的代码段,当我们开发驱动程序的时候就会使用到它。
#pragma once
只要在头文件的最开始加入这条指令就能够保证头文件被编译一次, 这条指令实际上在 VC6 中就已经有了,但是考虑到兼容性并没有太多的使用它。 pragma once 是编译相关,就是说这个编译系统上能用,但在其他编译系统不一定可以,也 就是说移植性差,不过现在基本上已经是每个编译器都有这个定义了。
#ifndef,#define,#endif
这个是 C++语言相关,这是 C++语言中的宏定义,通过宏定义避免 文件多次编译。所以在所有支持 C++语言的编译器上都是有效的,如果写的程序要跨平台, 最好使用这种方式。
#pragma hdrstop
#pragma hdrstop 表示预编译头文件到此为止,后面的头文件不进行预编译。BCB 可以预编 译头文件以加快链接的速度, 但如果所有头文件都进行预编译又可能占太多磁盘空间, 所以 使用这个选项排除一些头文件。
#pragma startup,#pragma package(smart_init)
有时单元之间有依赖关系,比如单元 A 依赖单元 B,所以单元 B 要先于单元 A 编译。你可 以用#pragma startup 指定编译优先级,如果使用了#pragma package(smart_init) ,BCB 就会 根据优先级的大小先后编译。
#pragma resource
#pragma resource "*.dfm"表示把*.dfm 文件中的资源加入工程。 *.dfm 中包括窗体外观的 定义。
#pragma warning
#pragma warning( disable : 4507 34; once : 4385; error : 164 ) 等价于: #pragma warning(disable:4507 34) // 不显示4507和34号警告信息 #pragma warning(once:4385) // 4385号警告信息仅报告一次 #pragma warning(error:164) // 把164号警告信息作为一个错误。
#pragma warning( push ,n )
#pragma warning( pop ) 这里 n 代表一个警告等级(1---4)。 #pragma warning( push )保存所有警告信息的现 有的警告状态, 并且把全局警 告等级设定为 n。
#pragma warning( pop )
#pragma warning( pop )向栈中弹出最后一个警告信息。
pragma comment
pragma comment(lib,"win_32.lib") 。
#pragma loop_opt(on) // 激活 。
#pragma loop_opt(off) // 终止。
另有一篇详细的可供参考:http://wenku.baidu.com/view/b016c10203d8ce2f0066239a.html