标识符不在范围内 [Unity, VS2019]

Posted

技术标签:

【中文标题】标识符不在范围内 [Unity, VS2019]【英文标题】:The identifier is not in the scope [Unity, VS2019] 【发布时间】:2019-05-23 20:39:38 【问题描述】:

我最近切换到 Visual Studio 2019(之前是 2017 年)和 Unity 2019.1.3f1(之前是 ~2019.1.0 的东西),在 Visual Studio 中使用了新的 Tools for Unity,我偶然发现了一个问题。

在调试时,我看不到 Singleton 类中的变量(例如,GameManager.Instance.Var,Instance 是 public static)。如果我尝试通过即时窗口查看它,它会给我这个:

The identifier 'GameManager' is not in the scope

将鼠标悬停在它的任何部分(GameManager、Instance、Var)上根本不会提供任何信息,CodeLens 无法使用它。

太糟糕了,因为现在我无法正确调试,只有Debug.Loglol...

帮助!我能做些什么?好像找不到类似的问题。

这是我为 Tools for Unity 设置的图片:

谢谢!

【问题讨论】:

【参考方案1】:

所以,我想通了,这是 Visual Studio 2019 的错误,我已向 Microsoft 报告,他们将修复它。 这是问题的链接: https://developercommunity.visualstudio.com/content/problem/581763/unity-development-in-visual-studio-2019.html

【讨论】:

还值得一提的是,从您链接的线程来看,完全声明对象的命名空间是目前的一种解决方法。我刚刚对此进行了测试,它允许我在调试器中查看单例,在没有命名空间的情况下,我得到的只是“不在范围内”消息。

以上是关于标识符不在范围内 [Unity, VS2019]的主要内容,如果未能解决你的问题,请参考以下文章

UnicodeEncodeError:'ascii' 编解码器无法在位置 6 编码字符 u'\u2019':序数不在范围内(128)

和视频违规声明原创案例集锦

和视频违规声明原创案例集锦

RangeError(索引):无效值:不在 0..6 范围内,包括:-2

不在视野范围内时暂停平面列表中的视频

颤振错误:RangeError(索引):无效值:不在0..2范围内,包括:3