Ben.. mon programme ne veut pas que Heros[imetier] (imétier est soit 0, soit 1) attaque Heros[2] (qui est le monstre).
Il me dit :
Heros[imetier]->attaquer(Heros[2]);
no matching function for call to 'Personnage:attaquer(personnage*&)
C'est très simple : Heros[2] est de type Personnage* (d'après la définition de Heros).
Or la méthode attaquer attend un Personnage& et non un Personnage*, il faut donc déréférencer Heros[2] avec *