Я делаю программу, где есть Герой, у которого есть Меч. У меня есть класс для обоих. В заголовке я получаю ошибку: expected ')' before '*' token
в строке Sword(Hero* h);
в заголовке Меча. Здесь соперничают файл (Sword.h):ошибка: ожидается ')' перед '*' токеном в заголовке
#ifndef SWORD_H
#define SWORD_H
#include <Hero.h>
class Sword {
public:
Sword(Hero* h);
virtual ~Sword();
};
#endif // SWORD_H
Hero.h находится в том же каталоге, Hero.h, и я использую Code :: Blocks.
Я просмотрел другие сообщения и не нашел ничего, что помогло, поэтому любое данное будет оценено по достоинству.
EDIT: Вот содержание Hero.h:
#ifndef HERO_H
#define HERO_H
#include <string>
#include <SDL.h>
#include <SDL_image.h>
#include <stdio.h>
#include <Sword.h>
#include <Sprite.h>
#include <Window.h>
class Hero : public Sprite {
public:
Hero(Window* w);
void update();
void event(SDL_Event e);
~Hero();
protected:
private:
bool up;
bool right;
bool left;
bool down;
Window* window;
Sword* sword;
};
#endif // HERO_H
Как 'Hero' определено? Кстати, вы должны использовать '' ... "' для включения файлов из одного и того же проекта и '<…>' только для внешних файлов. – emlai
Woah ... В sword.h вы используете Hero.h, а затем в Hero.h вы используете sword.h – Srinath
'Герой * меч,' что-то кажется неправильным здесь ... – emlai