c++ 编译错误 "redefinition of",需要帮助才能找到它

标签 c++ include compiler-errors

我已经很久不用C++了,对它不是很友好。我正在恢复我的一个旧项目并尝试编译它,但我在启动 Makefile 时收到以下错误输出:

g++ -W -ggdb3 -Wall -ansi -pedantic  -c main.cpp
In file included from Entity3d.h:4,
                 from SceneManager.h:10,
                 from main.cpp:5:
Entity.h:82: warning: unused parameter ‘rot’
Entity.h:82: warning: unused parameter ‘delta’
Entity.h:82: warning: unused parameter ‘scale’
In file included from SceneManager.h:20,
                 from main.cpp:5:
GamePlayer.h:52: error: redefinition of ‘Vector3d delta’
GamePlayer.h:52: error: ‘Vector3d delta’ previously declared here
main.cpp:7: warning: second argument of ‘int main(int, char*)’ should be ‘char **’
make: *** [main.o] Error 1

GamePlayer.h:52 在哪里:

void Behavior(Vector3d rot, Vector3d delta, Vector3d delta);

行为覆盖其父类 (Entity.h) 的函数:

virtual void Behavior(Vector3d rot, Vector3d delta, Vector3d scale) {};

类的层次结构如下:

class GamePlayer : public Entity3d
class Entity3d : public Entity

我检查了包含守卫,它似乎是正确的。

谁能给我指明正确的方向?

最佳答案

您为两个参数使用了相同的名称:

... Vector3d delta, Vector3d delta);

关于c++ 编译错误 "redefinition of",需要帮助才能找到它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7377772/

相关文章:

c - GCC:混合 C/汇编项目 - include 指令

C++ 错误 : expected primary-expression before ‘int’

c++ - OpenCV:将 YAML 文件读入 CvMat 结构

objective-c - 它们是否会因导入(不必要的) header 而对 IOS 造成性能损失?

c++ - sed 中用于替换 C++ 的正则表达式包括

asp.net - .NET编译错误,显示用户友好屏幕

java - 使用方法计算圆的面积

c++ - 无向 DFS : how can I provide color maps as exterior properties?

C++命令行程序设计UI?

c++ - 使用 Poco 库在邮件中发送 HTML 代码