Impossible de faire passer un this en argument
Bonjour,
Je rencontre actuellement un problème bloquant dont je ne trouve pas la solution, le but qu'un objet puisse envoyer un this ( donc un pointer vers lui même ) à un autre objet ( via son constructeur ) en argument.
voici ce que j'ai essayé en version simplifié qui ne fait apparaitre que le code du problème :
UnitTower.h
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| class UnitTower
{
public:
UnitTower();
~UnitTower();
sf::Sprite getSprite();
void update();
void setTarget(UnitMobile);
UnitMobile getTarget();
protected:
UnitMobile cible;
sf::Texture texture;
sf::Sprite sprite;
}; |
Une fonction dans le UnitTower.cpp qui doit crée un objet et envoyer un pointer de lui même
Code:
void UnitTower::update(){ Shoot shoot(this) }
le constructeur de l'objet qui récupère l'autre
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| class Shoot
{
public:
Shoot(UnitTower*);
~Shoot();
void fire();
protected:
sf::Texture texture;
sf::Sprite sprite;
int dommage;
UnitTower* tower;
sf::Clock clock;
}; |
Et son Shoot.cpp
Code:
1 2 3 4
| Shoot::Shoot(UnitTower* tOwer)
{
tower = tOwer;
} |
Je vous remercie d'avance et je continue à chercher ;)
Cdlm,
Phobizeur