CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C++/SDL] Erreur..

PanPanBoom
PanPanBoom
Niveau 10
21 octobre 2014 à 23:17:47

Bonjour/Bonsoir tout le monde ! :)

Voici mon problème : je continuais mon petit jeu, tranquillement, et je décide de créer un nouveau fichier "IA" pour l'intelligence artificielle donc. Donc je le crée je fais ce que j'ai à faire dedans et je compile. Sauf que là, deux erreurs surgissent de nul part à la même ligne :

Error: 'void IA(Catcheur, Catcheur, bool)' redeclared as different kind of symbol
Error: previous declaration of '<anonymous enum> IA'

J'ai cherché sur google mais l'anglais, c'est bof bof pour moi ^^ La ligne en question :

void IA(Catcheur j1, Catcheur IA, bool tourJ1);

Je tiens à préciser que ceci est dans le fichier .h de IA.

D'où cela peut venir ? Merci d'avance ! :)

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 00:52:53

Faudrait avoir un peu de code avec ça pas sur que l'on t'aide beaucoup, regarde du côté de tes accolades dans ton fichier .h

Dharxy
Dharxy
Niveau 6
22 octobre 2014 à 01:01:21

T'a surement deux fichier qui s'inclue entre eux.

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:02:12

Code d'où ? Dans mon fichier .h il n'y a que ça et les ifndef toussa toussa !

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:04:47

montre nous quand même t'es pas à l'abri d'une erreur toute bête :)

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:11:57

| https://www.jeuxvideo.com/forums/1-31-8700685-1-0-1-0-c-sdl-erreur.htm#message_8700699
| Ecrit par « Dharxy », 22 octobre 2014 à 01:01:21
| « T'a surement deux fichier qui s'inclue entre eux. »

C'est à dire ?

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:12:35

Le code du .h (Je ne le met pas sur pastebin, c'est tout petit)

  1. ifndef IA_H_INCLUDED
  2. define IA_H_INCLUDED
  3. include "Catcheur.h"

void IA(Catcheur j1, Catcheur IA, bool tourJ1);

  1. endif // IA_H_INCLUDED
Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:32:26

Le fichier cpp alors, peut être as tu mal déclarer la fonction IA :-d

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:35:30
  1. include <ctime>
  2. include <cstdlib>
  1. include "IA.h"
  2. include "rand_a_b.h"

void IA(Catcheur j1, Catcheur IA, bool tourJ1)
{
int a(1), b, randR;

srand(time(NULL));

if(!tourJ1)
{
if(j1.getVie() * 100 / j1.getVieMax() > 75)
{
b = 2
randR = rand_a_b(a, b);

switch(randR)
{
case 1:
IA.prise1(j1);
tourJ1 = true;
break;

case 2:
IA.prise2(j1);
tourJ1 = true;
break;
}
}

}
}

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:38:48

Ok donc rien ici non plus, montre nous la manière dont tu utilise cette fonction.

Les "Error" que tu obtiens ne t'indiquent pas de lignes précises?

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:41:41

Bah en fait je l'ai pas encore appelé, pour le moment j'ai juste créer la fonction !

Si, la ligne du .h que j'ai montré dans mon premier post !

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:45:11

essai de changer le nom de la fonction, je vois pas trop ce que cela pourrait être.

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:46:39

c'est peut être parce que la fonction possède le même nom que l'un des paramètres catcheur.

PanPanBoom
PanPanBoom
Niveau 10
22 octobre 2014 à 01:47:52

Ah bah ça marche ^^ Merci !

Pseudo supprimé
Pseudo supprimé 22 octobre 2014 à 01:48:49

Content d'avoir pu d'aider, bonne nuit.

FortCommeMeric
FortCommeMeric
Niveau 10
22 octobre 2014 à 11:19:34

Rien à voir avec ton problème résolu, mais je te conseille de n'appeller srand qu'une seule fois dans ton programme

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment