`
fireDragonpzy
  • 浏览: 466504 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

error C2061: 语法错误: 标识符“MonsterSprite”

阅读更多
本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/690


  
今天遇到了一个扯淡的错误,搞了半天时间,最终同事给解决了,错误信息如下:
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\drawfireline.h(40): error C2061: 语法错误: 标识符“MonsterSprite”
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\drawfireline.h(50): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\drawfireline.h(50): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\drawfireline.h(50): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\firescene.h(16): error C2143: 语法错误 : 缺少“;”(在“*”的前面)
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\firescene.h(16): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\firescene.h(16): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>e:\ios\cocos2d-1.0.1-x-0.11.0\purplebufferfly\classes\tigermountainscene.cpp(219): warning C4305: “参数”: 从“double”到“cocos2d::ccTime”截断

这样子看来,是没有定义MonsterSprite,但是我确实定义过啊。下面,给大家详细解释一下。
我程序是这样子的,MonsterSprite是自己封装的一个精灵类,而在一个自定义的层(DrawLine)中使用这个自定义的精灵,在DrawLine中#include "MonsterSprite.h"进来,然后使用自定义精灵类,最终在自定义的层中使用自定义的精灵,一切看起来是这么的自然,这么的合理,可是为什么偏偏报错了。
从C2061: 语法错误: 标识符“MonsterSprite”,看起来就是没有定义MonsterSprite,而是把MonsterSprite看成了标识符,一般大家自己定义的变量什么的大家习惯称之为标识符,但是我明明定义了,为什么还说没有呢。原因是编译就没有通过,我这次犯的错是重复包含,即A包含了B,B又包含了A,我的还稍微复杂点,在某个文件的头文件中包含了某个头文件,一层嵌一层,导致A包含了B,B又包含了A。希望大家以后注意,不要犯我这样的低级错误。
下面贴出解决方案:
在DrawLine头文件中先声明一下类:class MonsterSprite;然后在DrawLine.cpp文件中#include "MonsterSprite.h",反之即可。
恩,不早了,今天就先到这里了,希望这个对大家有帮助,也不浪费我这么多时间写……
呼呼……
分享到:
评论

相关推荐

    <pycrypto>-<2.6.1>-<python3.6>-<x64>

    pycrypto为加密解密的python第三方库: 资源文件为pycrypto2.6.1版本,且已经过编译,可以完美适配python3.6版本,主要解决如下问题: 无需依赖Microsoft Visual Studio可以成功安装pycryto库至python3.6中,解决了windows...

    C语言命语法错误大全

    6. error C2061: syntax error : identifier 'x' 该错误是由于标识符'x'附近存在语法错误引起的。解决方法是检查标识符'x'的语法是否正确,确保括号和分号的使用正确。 7. error C2065: 'i' : undeclared ...

    TextboxList:MooTools令牌生成器

    文字框清单 TextboxList很棒! 如何使用 TextboxList本质上非常易于使用,但具有极高的可配置性和可扩展性。 让我们回顾一些示例使用场景: #JS new TextboxList('form_tags_input'); 这会将&lt;...

    64位windows10 python3安装pysqlcipher3,包括openssl和vc14

    1、OpenSSL-Win64.rar解压到C盘根目录 目录结构c:/OpenSSL-Win64 2、pysqlcipher3.rar解压到c盘根目录 目录结构 c:/pysqlcipher3-master 3(离线版vc14)vc_redist.x64.exe直接安装 (如果安装过更新版本则跳过) 4 ...

    C语言常见的语法错误

    C语言常见的语法错误 C语言是一种古老而强大的编程语言,在编程过程中,程序员经常会遇到各种语法错误。这些错误可能会导致程序崩溃、无法编译或运行不正常。了解这些常见的语法错误,可以帮助初学者减少调试时间、...

    解决error LNK2001: unresolved external symbol

    在编译VC项目时,经常会遇到error LNK2001: unresolved external symbol的错误,这个错误是由于缺少某些库文件而引起的。在这里,我们总结了三种常见的情形,并提供了解决方案。 一、解决error LNK2001: unresolved...

    C语言编译时常见错误分析

    本文将详细分析fatal error C1003、fatal error C1004、fatal error C1083、fatal error C1903、error C2001、error C2006、error C2007、error C2008、error C2009、error C2010、error C2014、error C2015、error ...

    fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory

    【错误】fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory 【原因】stdint.h是c99标准的头文件,vc不支持,所以肯定会提示“No such file or directory”的。 【解决方案】 1. 去...

    error C1083: 无法打开包括文件:“pthread.h”

    error C1083: 无法打开包括文件:“pthread.h”: No such file or directory cocos2d-x-2.1.5\extensions\AssetsManager\AssetsManager.h 30 1 AssetsManagerTest

    vs环境问题error MSB4036: 未找到SetEnvironmentVariable

    错误1 error : 此编译的源文件可以在以下位置找到:“C:\Users\Merrya\AppData\Local\Temp\77717d73-33e2-455c-9afa-d9d8e10a4ec8.txt“ 错误 2error MSB3758: 编译时出错。error CS0016: 未能写入输出文件“c:\Users...

    fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”

    在使用Visual Studio 2008 (VS2008) 进行开发时,可能会遇到一个常见的错误:“fatal error C1083: 无法打开包括文件:“afxcontrolbars.h””。这一错误通常发生在尝试编译使用了MFC框架的应用程序时,特别是当用户...

    fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory。

    fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory. stdint.h是c99标准的头文件,vc不支持,所以肯定会提示“No such file or directory”的。使用方法:下载压缩包,解压得到两个.h...

    在Flex中发布地图 程序报错 SecurityError: Error #2048: 安全沙箱冲突,只需要下载添加这个就可以

    网上的方法很多,我看了好多,但是就是不管用,我的情况是,在程序没发布时,直接运行没错误,但是当发布时,访问就错了,提示SecurityError: Error #2048: 安全沙箱冲突:http://localhost:8086/index.swf 不能从 ...

    PL/O程序带注释

    "error 0003: 常数说明中的标识符后应是“=”", "error 0004: const,var,procedure后应为标识符", "error 0005: 漏掉了‘,’或‘;’", "error 0006: 过程说明后的符号不正确(应是语句开始符或过程开始符)", ...

    c++连接mysql5.6的出错问题总结

    1.描述:链接的时候出错了,错误提示:无法解析的外部符号 _mysql...1&gt;c:\program files (x86)\mysql\mysql server 5.6\include\mysql_com.h(320): error C2146: 语法错误: 缺少“;”(在标识符“fd”的前面) 1&gt;c:\progr

    emule0.50a-Xtreme8.1源码(VS2008下可无错编译成功)

    错误 3 error C2146: 语法错误 : 缺少“;”(在标识符“m_thbButtons”的前面) d:\emule相关资料\emule0.50a-xtreme\emule0.50a-xtreme8.1-sources\srchybrid\emuleDlg.h 196 emule 错误 4 error C4430: 缺少类型说明...

    roscan通信所需文件 controlcan.h

    roscan通信所需文件 controlcan.h

    error C1083: 无法打开包括文件: “glaux.h”: No such file or directory

    下载该文件后,分别将glaux.h、glaux.dll、glaux.lib拷贝到VS2013的安装目录即:VS2013/VC/lib ; VS2013/VC/bin ; VS2013/VC/include/GL中,重新编译即可。

    (完整word版)C语言程序编译常见错误对照.doc

    中文对照:编译错误,#define 语法错误分析:例如“#define”后缺少宏名,例如“#define” 在编译过程中,如果 #define 语法错误,编译器将报告错误。解决方法是检查 #define 语句是否正确。 8. error C2008: 'xxx...

Global site tag (gtag.js) - Google Analytics