Oli*_*ver 0 c c++ eclipse build-error
(过度依赖IDE的情况)
我有一些遗留的C代码,我编译为C++,用于单元测试.C源是C++知道的,因为它有条件地基于环境定义.
例如(PRIVATE做出决定static):
#if!defined __cplusplus
#define PRIVATE1 PRIVATE
#endif
Run Code Online (Sandbox Code Playgroud)
...
PRIVATE1 const int some_var;
Run Code Online (Sandbox Code Playgroud)
问题是我似乎无法找出PRIVATE1解决问题或在C++中解决的问题,如果我添加一个声明但是没有指明在哪里,编译器会抱怨重新定义?
我搜索了我的MinGW/gcc包含路径,C++ ISO规范和我可用的C++书籍都无济于事.
编辑:
当然,我在发布之前检查了命令行和makefile.
在ISO C++规范中没有这样的东西.最有可能PRIVATE1(以及PRIVATE)在项目的其他地方定义.请注意,这不需要#define是.h文件中的 - 也可以通过makefile中的编译器开关来定义.我建议在项目目录上做一个完整的grep.