全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

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的利弊分析  # 头文件  # 找不到  # 就会  # 是个  # 很好  # 也就  # 是指  # 也能  # 而不  # 这条  # 希望能  # 发现自己  # 不被  # 谢谢大家  # 更容易  # 则由  # 你不必  # 性好  # 完全相同  # 多份 


相关文章: 如何用景安虚拟主机手机版绑定域名建站?  php json中文编码为null的解决办法  公司门户网站制作流程,华为官网怎么做?  深圳网站制作的公司有哪些,dido官方网站?  营销式网站制作方案,销售哪个网站招聘效果最好?  如何快速重置建站主机并恢复默认配置?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  Swift中循环语句中的转移语句 break 和 continue  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  如何在橙子建站上传落地页?操作指南详解  攀枝花网站建设,攀枝花营业执照网上怎么年审?  PHP正则匹配日期和时间(时间戳转换)的实例代码  魔毅自助建站系统:模板定制与SEO优化一键生成指南  教学网站制作软件,学习*后期制作的网站有哪些?  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  ui设计制作网站有哪些,手机UI设计网址吗?  高防服务器租用首荐平台,企业级优惠套餐快速部署  如何基于云服务器快速搭建个人网站?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  如何用免费手机建站系统零基础打造专业网站?  北京网站制作的公司有哪些,北京白云观官方网站?  七夕网站制作视频,七夕大促活动怎么报名?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  建站之星如何快速更换网站模板?  建站之星多图banner生成与模板自定义指南  如何在景安服务器上快速搭建个人网站?  如何在Windows 2008云服务器安全搭建网站?  制作网站外包平台,自动化接单网站有哪些?  内网网站制作软件,内网的网站如何发布到外网?  网站制作公司,橙子建站是合法的吗?  建站主机是否等同于虚拟主机?  如何用好域名打造高点击率的自主建站?  建站之星免费版是否永久可用?  Android自定义控件实现温度旋转按钮效果  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  常州自助建站费用包含哪些项目?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  如何选择高效便捷的WAP商城建站系统?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  如何配置IIS站点权限与局域网访问?  如何在腾讯云服务器上快速搭建个人网站?  如何通过VPS搭建网站快速盈利?  建站之星安装提示数据库无法连接如何解决?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。