确定文件是否被 Qt Creator 解析(CUDA 语法高亮显示)

Determining if a file is parsed by Qt Creator (CUDA Syntax highlighting)

我最近从 Visual Studio 切换到 Qt Creator。我仍在 Windows 上使用 Visual Studio 编译器,因为 CUDA 将其作为依赖项。 CUDA 使用了一些只有在 nvcc 编译时才有效的函数和关键字,所以我在 Visual Studio 中做了一个解决方法来为 CUDA 文件启用语法高亮显示:

#pragma once

#ifdef __INTELLISENSE__

#include <cuda.h>
#include <cuda_runtime.h>
#include <device_launch_parameters.h>

#define __CUDACC__

#include <device_functions.h>

#endif

这在 Visual Studio 中有效,因为预处理器宏 __INTELLISENSE__ 仅在 Visual Studio 本身解析文件时定义,而不是在编译期间定义。现在我想知道是否还有一个 Qt Creator 在解析期间定义的宏,以便这种用于编码 CUDA 的解决方法仍然有效。

谢谢 斯文

尝试

#ifdef Q_CREATOR_RUN
// ...
#endif