【发布时间】:2022-01-20 09:24:16
【问题描述】:
请原谅我的基本问题和糟糕的编程知识。
我有一个需要在我的许多项目中使用的实现。但是不同项目包含的头文件不同。
假设我有用于 projecta.c 和 projectb.c 的 spi.h 头文件。但是 projectb.c 中不需要特定的包含(definitions.h),那么我如何使这个包含项目特定?
我已经看到这是通过#ifdef 和#ifndef 和指令完成的。但是有人可以帮我理解它是如何完成的。
谢谢
【问题讨论】:
-
您可能也可以只使用#pragma 一次。要使包含文件项目特定:将它们放在源文件文件夹中,对于“共享”头文件将它们放在共享文件夹中,对于 sdk 头文件,请创建一个 sdk 文件夹。
-
请不要描述您的代码,而是显示一个示例。目前还不清楚
definitions.h究竟会包含在哪里?在projecta.c或projectb.c?在spi.h?请edit您的问题并显示minimal reproducible example。
标签: c++ c include preprocessor-directive using-directives