01
2020
04

#ifdef x #define x … #endif 作用

防止头文件在被多次引用的时候重复定义,这是C和C++的所有编译器通用的。


但是微软的编译器还提供了另外一种方式#pragma once


因为#ifdef ...这种方法是利用宏定义特性来保证不会被重复引用的,但是#ifdef 这个宏定义可以在文件的任何地方使用,所以编译器必须将文件读完才能完成工作。但是#pragma once是单独的一个宏定义,编译器只要可以立即标记,所以第二种更快,但无法跨平台。

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。