Bonjour,
Je suis un peu rouillé en C++, alors ça doit surement être un truc bidon qui m'a échappé, mais j'ai une erreur que je ne comprends pas, avec des messages d'erreur pas explicites du tout, du coup je tourne un peu en rond.
Voila les fonctions qui sautent dans le .h (dans une class Neuron, mais peu importe)
Et voila les deux messages d'erreur associésCode:
1
2
3 virtual void set_back_changed(bool s = true); virtual void set_changed(bool s = true);
La j'ai tendance à me demander s'il ne manque pas le début de la phrase.Citation:
after previous specification in `virtual void Neuron::set_back_changed(bool)'
after previous specification in `virtual void Neuron::set_changed(bool)'
Dans le .cpp, voila mes fonctions :
etCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 void Neuron::set_back_changed(bool s = true) { if (!s) { back_changed = false; return; } /* propagate only as necessary */ if (!back_changed) { back_changed = true; for (Links::iterator p = prev().begin(); p != prev().end(); p++) { dynamic_cast<Neuron*>((*p)->from())->set_back_changed(true); } } }
Et les messages d'erreur :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 void Neuron::set_changed(bool s = true) { if (!s) { changed = false; return; } /* propagate only as necessary */ if (!changed) { changed = true; for (Links::iterator n = next().begin(); n != next().end(); n++) { dynamic_cast<Neuron*>((*n)->to())->set_changed(true); } } }
Pareil : super utile et on dirait qu'il manque un bout.Citation:
default argument given for parameter 1 of `void Neuron::set_back_changed(bool)'
default argument given for parameter 1 of `void Neuron::set_changed(bool)'
Alors est ce que c'est un probleme de virtual ? Un probleme lié aux valeurs par défaut ? Un truc qui n'a rien à voir ? Une erreur grossière qui vous donnera envie de me jeter des petits cailloux ?
Merci d'avance pour votre réponse.