当前位置:网站首页>#ifndef#define#endif笔记
#ifndef#define#endif笔记
2022-08-06 05:19:00 【来一份辣椒酱】
头文件中的 #ifndef/#define/#endif 是指防止该头文件被重复引用;
问:重复引用是指不能在不同的两个文件中使用include来包含这个头文件还是指在所有文件中加入#ifndef/#define/#endif 这些代码;
答:被重复引用”是指一个头文件在同一个cpp文件中被include了多次,这种错误常常是由于include嵌套造成的。比如:存在a.h文件#include "c.h"而此时b.cpp文件导入了#include “a.h” 和#include "c.h"此时就会造成c.h重复引用
问:头文件被重复引用的后果是什么?
答:1、首先会降低编译效率;
2、如果在头文件中定义了全局变量,在重复引用的情况下会产生编译错误;
#ifndef GRAPHICS_H // 防止graphics.h被重复引用
#define GRAPHICS_H
#include <math.h> // 引用标准库的头文件
…
#include “header.h” // 引用非标准库的头文件
…
void Function1(…); // 全局函数声明
…
class Box // 类结构声明
{
…
};
#endif
边栏推荐
猜你喜欢
随机推荐
TiDB:ERROR 1265 : Data Truncated 解决
贩卖使用了试用版数据库的软件,会构成侵权吗
文献阅读:基于弱监督学习的医学图像分割方法研究
VS报错合集(持续更新ing)
canvas
VS2010编译执行自定义命令
使用 Beautiful Soup
ES6迭代器与生成器
第十一章 事务与锁
图神经网络(一):综述
image中mode=“widthFix“的意思
什么是过滤器
1006:A+B问题
文献阅读:卷积神经网络在图像识别中的应用研究综述
动手学深度学习PyTorch(一):数据操作
iOS WKWebView与JS交互面试题
高德 通过 起 经 止 经纬度 获取路线经纬度,(可搜索位置,新增经过点)
,form.validateFields (()=>{})根本不执行的问题解决
线性筛详解(严密证明)+代码
Base64编码解码C代码实现









