Je ne pense pas que je pourrais expliquer comment je suis énervée parce que je ne peux pas trouver où j'ai manqué ici ..Erreur vraiment étrange sur le code C++. Paramètre copié avec une valeur trash et non celui que je voulais
Les images peuvent tout expliquer:
Capture d'écran de débogage, avec une valeur nxxx (utilisée pour l'appeler n, mais cette variable merdique ne mérite pas un nom aussi cool). Breakpoint était en première ligne de cette méthode.
http://img202.imageshack.us/img202/5057/value.png
Le code où la méthode est appelée, getA
et getB
travaillent .. Tout fonctionnait comme il y a 10 minutes ..
commentaire Le premier est la signature de méthode, deuxième commentaire est le code d'origine , qui devrait fonctionner. (Remplacé n
variable 0
pour voir si cela changerait quoi que ce soit .. avéré qu'il n'a pas)
/*
void HASAntData::init(float** A,
float** B,
int nxxx,
int R,
float q,
float Q,
float q1,
float q2,
int S,
int maxrounds,
int nThreads,
int seed)
*/
data->init(qap->getA(),
qap->getB(),
0,
1,
2,
3,
4,
5,
6,
7,
8,
9);
/*
data->init(qap->getA(),
qap->getB(),
0,
cudahas_R,
cudahas_q,
cudahas_Q,
cudahas_q1,
cudahas_q2,
cudahas_S,
cudahas_max_rounds,
cudahas_m,
Tools::randomInt(0, INT_MAX));
*/
modifier:
Voici la table avec toutes les valeurs variables, une traversée n'a pas d'importance pour ce problème. Voyez comment certaines variables sont OK, et certains ne sont pas
http://img831.imageshack.us/img831/6224/valuestable.png
Si "TOUT fonctionnait comme il y a 10 minutes", pourquoi ne pas "Ctrl + Z" plusieurs fois et voir ce que vous avez changé? –
Pour référence future, ne prenez pas une capture d'écran de votre code et incorporez l'image dans votre question, d'autant plus que vous pouvez simplement copier et coller le code/les données. Il est facilement formaté en indentant chaque ligne avec 4 espaces (utilisez Ctrl + K pour le faire rapidement). En outre, en intégrant des images au lieu du texte réel, vous empêchez de nombreuses personnes d'essayer votre code, mais elles ne le peuvent pas parce qu'elles ne peuvent pas le copier/coller. –
@ James McNellis, parce que j'ai changé certaines choses. hier, j'ai passé tous ces arguments au constructeur, maintenant je l'ai changé et je passe tout à la méthode init. – hfingler