美文网首页C++思考笔记
C++思考笔记(4):防止头文件重复包含

C++思考笔记(4):防止头文件重复包含

作者: RC_HT | 来源:发表于2019-10-24 18:43 被阅读0次

#ifndef和#pragma once

一般防止头文件重复包含问题,基本都是用这两种方式来解决。
#ifndef

#ifndef _XXX_H_
#define _XXX_H_

#endif

#pragma once

#pragma once

#ifndef优缺点:

  • +兼容性高,所有编译器都支持
  • -可能出现不同目录下同名头文件的冲突问题

#pragma once优缺点:

  • +写法简便
  • +预处理效率更高
  • -不属于标准,有些编译器不支持

总结

更推荐使用#pragma once,基本新一点的编译器都支持,如果你在PC平台编程基本不用担心编译器不支持的情况。

相关文章

  • C++思考笔记(4):防止头文件重复包含

    #ifndef和#pragma once 一般防止头文件重复包含问题,基本都是用这两种方式来解决。#ifndef:...

  • C语言编程知识点回顾

    头文件 防止头文件重复包含 将头文件包含在 这里的xxxx通常是\_文件名大写\_,不要重复使用这个宏定义。 兼容...

  • Header Guard

    Header Guard:防止头文件被重复包含Header Guard形式: 重复包含的问题: 预处理速度慢 重复...

  • 编程规范 - 头文件

    【摘自《 Google C++ 编程规范》】 所有头文件都应该使用 #define 防止头文件被多重包含(mult...

  • C++重复包含头文件坏处

    为什么要避免头文件重复包含呢? 1.我们知道在编译c或c++程序时候,编译器首先要对程序进行预处理,预处理其...

  • C++ 中的 #ifndef & #define

    这两个大哥,都是常常被使用在头文件中,为了防止头文件重复包含而发生重复定义,在小的项目中不明显,但是大的工...

  • 为什么C++的头文件需要做防卫式声明?

    防止同一个头文件被包含多次而导致重复定义。 举个例子:如果没有防卫式声明 // 头文件 A.hclass A{};...

  • Note

    C语言基础头文件的使用防止头文件被重复包含宏的使用gcc编译器的基本使用函数的声明、调用、传参 VC Code工具...

  • 为什么要防止头文件多重包含

    网上有大量文章说如何防止头文件多重包含,却从来不去说为什么要去防止头文件多重包含?还有极少数文章讲到了头文件多重包...

  • #ifndef/#define/#endif

    “头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用” “被重复引用”是指一个头文件...

网友评论

    本文标题:C++思考笔记(4):防止头文件重复包含

    本文链接:https://www.haomeiwen.com/subject/euvdvctx.html