'variable' was not declared in this scope

di il
2 risposte

'variable' was not declared in this scope

Ciao a tutti,
sto avendo dei problemi con un programmino.
sto usando code::blocks e ho un main.cpp, player.h e player.cpp

l'errore lo ricevo nel file player.cpp, per cui vi posto il .cpp e il .h
#ifndef PLAYER_H
#define PLAYER_H


class Player
{
    public:
        Player(int ap);
        Player(int h, int s, int ap);

        void setHealth(int h);
        void setShield(int s);
        void setAttackPower(int ap);

        int getHealth() const;
        int getShield() const;
        int getAttackPower() const;

    private:
        int health;
        int shield;
        int attackPower;
};

#endif // PLAYER_H
player.cpp
#include "..\include\Player.h"

Player::Player(int ap)
: health(100), shield(100), attackPower(ap)
{
}

Player::Player(int h, int s, int ap)
: health(h), shield(s), attackPower(ap)
{
}

void setHealth(int h) { health = h; }

void setShield(int s) { shield = s; }

void setAttackPower(int ap) { attackPower = ap; }

int getHealth() const { return health; }

int getShield() const { return shield; }

int getAttackPower() const { return attackPower; }
la struttura delle cartelle (src e header) è quella di default di code::blocks.
l'errore mi viene dato nel file player.cpp e mi dice che le variabili health, shield e attackPower (nelle funzioni set e get) non sono state dichiarate in this scope. Mentre nei costruttori, il compilatore le accetta. quale errore ho commesso?

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte