使用未声明的标识符“kDefaultNative”
Posted
技术标签:
【中文标题】使用未声明的标识符“kDefaultNative”【英文标题】:Use of undeclared identifier 'kDefaultNative' 【发布时间】:2021-07-17 15:14:33 【问题描述】:我正在尝试使用 ASPIK SDK 生成音频插件。我一直碰到同样的绊脚石。每次构建时,我都会在 plugingui.h 文件的这一行中收到错误“使用未声明的标识符 'kDefaultNative'”。
const PlatformType& platformType = kDefaultNative,
如果我跳转到PlatformType
的定义,我会看到kDefaultNative
是在VSTGUI 的iplatformcallback.h 中定义的。
enum class PlatformType : int32_t
kHWND, // Windows HWND
kWindowRef, // macOS WindowRef (Carbon)
kNSView, // macOS NSView
kUIView, // ios UIView
kHWNDTopLevel, // Windows HWDN Top Level (non child)
kX11EmbedWindowID, // X11 XID
kGdkWindow, // GdkWindow
kDefaultNative = -1
;
我已尝试将此文件包含在 plugingui 文件中,但我不断收到未找到的错误。
【问题讨论】:
pluginui.h
是您项目的一部分,还是外部包含的内容?
【参考方案1】:
kDefaultNative
标识符是scoped enumeration 的值之一(即它在class enum ...
中)。因此,为了使用它,您需要包含该类“范围”。
所以,使用如下行:
const PlatformType& platformType = PlatformType::kDefaultNative;
【讨论】:
以上是关于使用未声明的标识符“kDefaultNative”的主要内容,如果未能解决你的问题,请参考以下文章