如果QT用于构建代码,我可以使用什么预处理器来检测

如果QT用于构建代码,我可以使用什么预处理器来检测,qt,preprocessor,c-preprocessor,Qt,Preprocessor,C Preprocessor,我正在用C编写一个库项目,它可以使用或不使用QT构建。是否有任何预处理器指令(不需要额外的头)可以用来区分QT是否在C代码中使用 我想做一些事情,比如: #ifdef I_AM_QT // some qt specific codes #else // some codes for other environments #endif 谢谢。您不能设置自己的定义来指示您是使用Qt还是不使用Qt进行构建吗?您可以查看问题状态。。。不需要额外的标题。您可以使用QT\u CORE\u LIBdefin

我正在用C编写一个库项目,它可以使用或不使用QT构建。是否有任何预处理器指令(不需要额外的头)可以用来区分QT是否在C代码中使用

我想做一些事情,比如:

#ifdef I_AM_QT
// some qt specific codes
#else
// some codes for other environments
#endif

谢谢。

您不能设置自己的定义来指示您是使用Qt还是不使用Qt进行构建吗?您可以查看问题状态
。。。不需要额外的标题。您可以使用
QT\u CORE\u LIB
define而不包括QT头吗?@vahancho,是的。至少,对于Qt5.12.4,当使用CMake构建项目时,我看到编译器被
-DQT_CORE_LIB
调用,因此它是一个可用于所有源文件的全局宏定义。
#ifdef QT_CORE_LIB
// some qt specific codes
#else
// some codes for other environments
#endif