我认为预处理器会一个接一个地处理文件,但我不知道如何使用 include 来处理,所以我认为这是不可能的,但很高兴听到其他人的想法。
我在a.cpp
中有:
#define A 1
我想在 2.cpp
中使用它。
编辑: 我无法修改第一个文件。所以现在我只是复制了定义。但问题仍然悬而未决。
最佳答案
其他翻译单元看不到源文件中的定义。实现文件单独编译。
你可以
- 将它们放在标题中并包含在内
- 使用编译器的选项
- 以理智的方式去做 -
extern const int A = 1;
在一个实现文件中,并在你想使用它时声明它extern const int A;
。
其中,我会说第一个选项可能是您可以使用的最糟糕的选项。
关于c++ - 是否可以使用其他 cpp 文件中的#define?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14275950/