代码改变世界

#pragma once与#ifndef #define ...#endif的区别

2007-03-29 17:07  flyingfish  阅读(735)  评论(0编辑  收藏  举报

#pragma once
这个是编译相关,就是说在这个编译系统上能用,但是在其他编译系统
不一定型,也就是说移植型差。不过现在基本上已经是每个编译器都有这个定义了.


#ifndef #define ...#endif
这个是C++语言相关,这是C++语言中的宏定义,通过宏定义避免文件
多次编译。所以在所有支持C++语言的编译器上都是有效的。如果写的程序要跨平台,最好使用这种方式。