怎么解决头文件重复包含的问题

发布网友 发布时间:2022-04-22 18:03

我来回答

2个回答

热心网友 时间:2023-06-24 04:29

我没太清楚你的意思, 你的意思是
1、 如果头文件A包含头文件C,同时头文件B也包含头文件C,而你写的程序中包含了头文件A,头文件B,然后在编译的时候报头文件C重复包含的错误吗?
这个错误 只要在自己写的头文件中这样写
#ifndef X //X为你的标识符,保持唯一,可以长点,比如 #ifndef _INCLUDE_XXXXXX_H_
#define X

//这里是你的头文件

#endif

2、还是说你写的代码里, 头文件A需要包含头文件B,头文件B需要包含头文件C,而头文件C又要包含头文件A?
这种情况直接包含就没问题了

3、别的意思?没太懂,请补充

热心网友 时间:2023-06-24 04:29

不是很明白你的问题。层层包含出什么问题了?
通常头文件定义都会加上一些预编译指令,让头文件在被多个文件引用的时候不会多次编译。比如classA.h里面可以写:
#ifndef _CLASSA_H_
#define _CLASSA_H_
// Source code here
#endif //_CLASSA_H_

或者直接使用#pragma once 指令

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com