其他预编译指令

#error   

#error指令使预处理器发出一条错误消息,然后停止执行预处理。
#error 一般形式为#error info,如#error MFC requires C++ compilation。

#line   

#line指令用于重新设定当前由__FILE__和__LINE__宏指定的源文件名字和行号。
#line一般形式为#line number "filename",其中行号number为任何正整数,文件名filename可选。#line主要用于调试及其它特殊应用,注意在#line后面指定的行号数字是表示从下一行开始的行号。

#pragma   

#pragma指令可能是最复杂的预处理指令,它的作用是设定编译器的状态或指示编译器完成一些特定的动作。
#pragma一般形式为#pragma para,其中para为参数,下面介绍一些常用的参数。
#pragma once,只要在头文件的最开始加入这条指令就能够保证头文件被编译一次。
#pragma message("info"),在编译信息输出窗口中输出相应的信息,例如#pragma message("Hello")。
#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 comment(…),设置一个注释记录到对象文件或者可执行文件中。常用lib注释类型,用来将一个库文件链接到目标文件中,一般形式为#pragma comment(lib,"*.lib"),其作用与在项目属性链接器“附加依赖项”中输入库文件的效果相同。

posted @ 2018-04-05 16:25  刘-皇叔  阅读(169)  评论(0编辑  收藏  举报