C++ 中pragma once 与 #ifndef _XXX_H_ #define _XXX_H_的区别

pragma once 之前一直用的很好,今天和同事的配合中发现自己没有真正理解pragma once。
原因:同事喜欢把公共的头文件通过生成后事件复制到一个公共的include文件夹中。
摘抄:
#ifndef方式: #ifndef __SOMEFILE_H__ #define __SOMEFILE_H__ 1 ... ... // 一些声明语句 #endif
#ifndef的方式依赖于宏名字不能冲突,这不光可以保证同一个文件不会被包含多次,也能保证内容完全相同的两个文件不会被不小心同时包含。当然,缺点就是如果不同头文件的宏名不小心“撞车”,可能就会导致头文件明明存在,编译器却硬说找不到声明的状况
#pragma方式
#pragma once ... ... // 一些声明语句
#pragma once 是个预处理指令,在头文件的最开始加入这条指令表示:这个头文件只被编译一次 #pragma once则由编译器提供保证:同一个文件不会被包含多次。注意这里所说的“同一个文件”是指物理上的一个文件,而不是指内容相同的两个文件。带来的好处 是,你不必再费劲想个宏名了,当然也就不会出现宏名碰撞引发的奇怪问题。对应的缺点就是如果某个头文件有多份拷贝,本方法不能保证他们不被重复包含。当 然,相比宏名碰撞引发的“找不到声明”的问题,重复包含更容易被发现并修正。
总结: 1. #ifndef 由语言支持所以移植性好,#pragma 可以避免名字冲突
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# C++
# 中pragma
# once
# 与
# #ifndef
# _XXX_H_
# 区别
# pragma
# #define
# C语言编程技巧 关于const和#define的区别心得
# c++ 尽量不要使用#define 而是用const、enum、inline替换。
# c++ const引用与非const引用介绍
# C++中的类型转换static_cast、dynamic_cast、const_cast和reint
# C/C++中static
# const
# inline三种关键字详细总结
# C++中const的实现机制深入分析
# C/C++中宏定义(#define)
# C/C++中的typedef和#define详解
# C++中const与#define的利弊分析
# 头文件
# 找不到
# 就会
# 是个
# 很好
# 也就
# 是指
# 也能
# 而不
# 这条
# 希望能
# 发现自己
# 不被
# 谢谢大家
# 更容易
# 则由
# 你不必
# 性好
# 完全相同
# 多份
相关文章:
高性价比服务器租赁——企业级配置与24小时运维服务
如何在阿里云高效完成企业建站全流程?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
Python如何创建带属性的XML节点
中山网站推广排名,中山信息港登录入口?
如何用VPS主机快速搭建个人网站?
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
C#如何使用XPathNavigator高效查询XML
建站之星官网登录失败?如何快速解决?
如何快速上传自定义模板至建站之星?
制作宣传网站的软件,小红书可以宣传网站吗?
高端建站三要素:定制模板、企业官网与响应式设计优化
专业网站建设制作报价,网页设计制作要考什么证?
大连网站制作公司哪家好一点,大连买房网站哪个好?
,石家庄四十八中学官网?
高防服务器租用如何选择配置与防御等级?
如何设置并定期更换建站之星安全管理员密码?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何快速完成中国万网建站详细流程?
如何在Golang中指定模块版本_使用go.mod控制版本号
建站之星如何实现五合一智能建站与营销推广?
完全自定义免费建站平台:主题模板在线生成一站式服务
如何高效完成自助建站业务培训?
如何快速搭建高效WAP手机网站?
零服务器AI建站解决方案:快速部署与云端平台低成本实践
设计网站制作公司有哪些,制作网页教程?
浅析上传头像示例及其注意事项
如何在腾讯云服务器快速搭建个人网站?
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
建站之星安装路径如何正确选择及配置?
制作农业网站的软件,比较好的农业网站推荐一下?
宝塔新建站点报错如何解决?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
兔展官网 在线制作,怎样制作微信请帖?
北京网站制作的公司有哪些,北京白云观官方网站?
山东网站制作公司有哪些,山东大源集团官网?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
专业商城网站制作公司有哪些,pi商城官网是哪个?
创业网站制作流程,创业网站可靠吗?
临沂网站制作公司有哪些,临沂第四中学官网?
网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?
广德云建站网站建设方案与建站流程优化指南
*请认真填写需求信息,我们会在24小时内与您取得联系。