C 错误跟踪意外令牌
C++ error tracking unexpected token
经过一些重构并更改C 类后,发生了错误。奇怪的是,该错误没有位于我的.cpp文件中,而是在外部包含文件(OpenSceneGraph)中,该文件迄今为止工作正常。
在OSG/对象文件中,有以下枚举
enum DataVariance
{
DYNAMIC,
STATIC,
UNSPECIFIED
};
导致语法错误。当我将 STATIC
更改为 STATIc
时,一切都很好地编译了。
错误c2059:语法错误:'static'
错误c3805:'typ':意外令牌,预期'}'或','
我没有更改OpensCeneGraph中的内容,只使用OpenSceneGraph重构了类中的某些代码,突然出现了错误。整个编译器输出都讨论了外部代码中的错误。
如何从编译器输出中提取自己的代码中的实际故障点?我认为这只是愚蠢的事情,但我不知道在哪里寻找错误。
(我不能仅更改OpenSceneGraph的代码)
很可能这是与预处理器问题相撞的名称。这就是为什么在大写中持续不断的旧习惯会造成当今的问题而不是修复它们的原因。要解决此问题,请在包括:
之前删除宏定义。#ifdef STATIC
#undef STATIC
#endif
#include <header_with_problem>
在另一侧,不确定此宏可能会在其他地方造成问题,然后您需要找到其具有什么值并在包含后还原它。(或在可能的情况下将其包含在最后一个)
解决方案就像我预期的那样愚蠢:
我使用Clang-Format根据指南将代码格式化。Clang-Format工具更改了包含文件顺序(按字母顺序,设置此属性的人)。"次要"更改打破了我的代码。
提示:我使用预处理器解决问题:
#if 0
// excluded code
#endif
和
#if 1
// included code
#endif
这使我可以排除编码ep。如果汇编仍然失败,将是代码其余部分的问题。所以我发现,问题被隐藏在某些包含文件中。
之后,我使用svn diff比较了。
相关文章:
- 如何在C++中使用X509证书模在令牌中查找私钥
- holeMenuProgram.cpp:38:1 错误:'}'令牌之前的预期主表达式
- C++:"("令牌"之前有预期的非限定 id 指向类中成员函数的指针
- Arduino 用于语句错误。令牌之前的预期')' ';'。如何解决这个问题?
- 错误:令牌 { '{' 之前应存在非限定 ID
- 允许哪些令牌作为 #include 的参数?
- "错误 C0000:语法错误,令牌"<EOF>"处出现意外$end,并且不确定
- 它在 { 令牌之前给了我预期的标识符
- (错误:令牌之前'<<'预期的主表达式)
- 为什么 ## aka 令牌粘贴运算符不适用于 C 和 C++ 中的注释?
- 错误:"->"令牌之前的预期初始值设定项
- LINUX 操作系统上的错误:令牌之前预期的构造函数、析构函数或类型转换'('?
- 丢失读入的每一行输入中的最后一个令牌
- 是什么导致了构造函数之后的这些"意外令牌"错误?
- 有关意外令牌 c2760 的链接列表头文件错误
- 获取语法和意外令牌错误,任何人都知道原因
- C 错误跟踪意外令牌
- 无法编译顶点着色器:令牌"<EOF>"出现意外$end
- 错误:令牌之前出现意外'.'非限定 ID?
- Cmake 奇怪的错误:语法错误意外的令牌 ('