【C/C++】头文件防卫式宏

本篇简单介绍头文件防卫式宏 Header Guard

其目的是:为了防止头文件被多次包含导致编译错误,保证每个头文件内容只被包含一次。

做法是在 .h 头文件开头结尾加上下列代码:

c 复制代码
#ifndef PRO_H
#define PRO_H
//......
#endif

C++11之后,可以使用 #pragma once,效果一样,但写起来更简单:

c 复制代码
#progma once
//......

#pragma once 是编译器扩展,不是标准,不过大部分主流编译器GCCClangMSVC 都支持了。

所以使用二者任一都可以,以上便是本篇所有内容,谢谢。

相关推荐
冯汉栩几秒前
Swift Control View,Label渐变颜色(源码)
开发语言·ios·swift
Titan20241 小时前
Linux网络基础知识
linux·服务器·网络·c++·学习
白狐_7981 小时前
408 数据结构|线索二叉树两题详解:先序线索化后的空链域 + 中序前驱/后继判断
c语言·数据结构·链表
从小就看凹凸曼^o^1 小时前
Python基础5 - 字典与集合:(1)字典
开发语言·python
GeekZHR1 小时前
C语言指针进阶补充6:动态内存管理、mem系列内存函数、复杂指针声明,一次补齐指针的“三大盲区“
java·c语言·算法·指针
侧耳倾听1111 小时前
java 日志框架简介
java·开发语言
zlinear数据采集卡2 小时前
数据采集卡从入门到精通(9):分辨率与精度——16位卡不等于1/65536的精度
开发语言·数据库·fpga开发·开源·c#
全栈技术负责人2 小时前
解密 MCP(Model Context Protocol):大模型时代的“Type-C”总线与三驾马车架构深度解析
开发语言·ai·架构
丰锋ff2 小时前
1.7在Qt窗口中添加右键菜单
开发语言·qt
Titan20242 小时前
Linux网络学习:套接字、UDP的封装与应用
linux·服务器·开发语言·网络·c++