• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SFML brak widoczności obiektu z jednej klasy w drugiej

0 głosów
277 wizyt
pytanie zadane 8 lutego 2021 w C i C++ przez solidereq Nowicjusz (140 p.)

Przy deklaracji funkcji bool w klasie ship poazuje mi błąd że nie zadeklarowałem 'player' gdzie dałem include do pliku z deklaracją klasy player

#pragma once
#include "fields.h"
#include "player.h"
#include "SFML/Network.hpp"
using namespace std;
enum Direction{Up, Left, Down, Right, None};
class ship{
int shiplength;
int currentshiplenght;
Direction Shipdr;
int ship_x;
int ship_y;
field* T[SHIP_LENGTH_MAX];

public:
	bool setShip(int y, int x, int Length, Direction dir, player p);
	int getX() { return ship_x; }
	int getY() { return ship_y; }
	void setCurrentLength() { currentshiplenght = shiplength; }
	int& RefShipLength() { return currentshiplenght;}
	int getFirstLength() { return shiplength; }
	void SinkShip(player*);
	ship& operator=(ship&);
	friend sf::Packet& operator <<(sf::Packet& packet, const ship& m);
	friend sf::Packet& operator >>(sf::Packet& packet, ship& m);
	friend void ClearArea(ship&, field**);

	void DrawShip() { cout << ship_x << " " << ship_y << " " << Shipdr << " " << shiplength << endl; }
};

 

komentarz 9 lutego 2021 przez j23 Mędrzec (195,240 p.)

Zgaduję: w player.h załączasz ship.h (lub plik z cytowanym kodem).

komentarz 9 lutego 2021 przez solidereq Nowicjusz (140 p.)
tak
komentarz 9 lutego 2021 przez j23 Mędrzec (195,240 p.)

Zatem przenieś #include "player.h" do pliku źródłowego ship.cpp, a w ship.h daj na początku deklarację zapowiadającą class player;

komentarz 9 lutego 2021 przez solidereq Nowicjusz (140 p.)
dzięki, działa

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
0 odpowiedzi 142 wizyt
0 głosów
2 odpowiedzi 475 wizyt
pytanie zadane 28 marca 2017 w C i C++ przez akiihombre Początkujący (250 p.)
–1 głos
0 odpowiedzi 144 wizyt
pytanie zadane 22 października 2018 w C i C++ przez niezalogowany

93,425 zapytań

142,421 odpowiedzi

322,646 komentarzy

62,785 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...