【发布时间】:2012-08-17 07:01:26
【问题描述】:
当我尝试在标头中声明向量时,我不断收到一长串错误。我环顾了一段时间,但找不到解决方案。
以下是错误:
1>正在编译... 1>game.cpp 1>c:\users\legacyblade\documents\visual 工作室 2008\projects\fourswords\fourswords\input.h(38):错误 C2143: 语法错误:缺少';'在'c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2071: 'input::vector' : 非法存储类 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C4430:丢失 类型说明符 - 假定为 int。注意:C++ 不支持默认整数 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2238: ';' 之前的意外标记1>main.cpp 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2143:语法 错误:缺少';'在 'c:\users\legacyblade\documents\visual 之前 工作室 2008\projects\fourswords\fourswords\input.h(38):错误 C2071: 'input::vector' : 非法存储类 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C4430:丢失 类型说明符 - 假定为 int。注意:C++ 不支持默认整数 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2238: ';' 之前的意外标记1>输入.cpp 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2143:语法 错误:缺少';'在 'c:\users\legacyblade\documents\visual 之前 工作室 2008\projects\fourswords\fourswords\input.h(38):错误 C2071: 'input::vector' : 非法存储类 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C4430:丢失 类型说明符 - 假定为 int。注意:C++ 不支持默认整数 1>c:\users\legacyblade\documents\visual studio 2008\projects\fourswords\fourswords\input.h(38):错误 C2238: ';' 之前的意外标记
这里是源代码:
#include <vector>
#include <SFML/Graphics.hpp>
#ifndef _input_h
#define _input_h
class input
{
public:
input();
void update();
//----input keys----//
// Directions
bool upPress;
bool downPress;
bool leftPress;
bool rightPress;
// Actions
bool aPress;
bool bPress;
bool jumpPress;
bool shieldPress;
// Menu
bool startPress;
bool screenshotPress;
bool fullscreenPress;
//------------------//
private:
extern vector<sf::Keyboard::Key> keyBindings;
};
#endif
无论有没有 extern,它都会给我同样的错误,即使我改变了向量内事物的类型(甚至是 int)。
非常感谢您的阅读。如果有人可以提供帮助,那就太好了。我需要向量来做我想做的事情。不知道为什么给我带来这么大的麻烦。同一地点的任何其他类型的变量都不会导致错误。只有向量。
【问题讨论】:
标签: c++ visual-studio-2008 vector sfml