Quelque chose de vraiment bizarre se produit: quand j'appelle foo (100 * 1.0f), quelque part le long de la ligne qui devient 0. Pour vérifier je mets un point d'arrêt sur foo(), et c'est en effet zéro et est en effet appelé avec 100 * 1.0f. Le code est en Obj-C++.Paramètre devenant nul quelque part
est ici la fonction appelante dans le frontend GDB de XCode, comme vous pouvez le voir, le score * scoreMultiplier est 100. Calling Function http://img341.imageshack.us/img341/1109/screenshot20100502at135.png
void JNPP1PGameController::addScoreToPlayer(NSInteger score) {
if(!gameOver){
JNLogString(@"Adding score(%d*%f) to player", score, scoreMultiplier);
[player addScore: score*scoreMultiplier];
[wrapper setShouldNotify];
[wrapper notify];
} else {
JNLogString(@"Not adding score(%d*%f) because GAME IS OVAR", score, scoreMultiplier);
}
}
Et est ici la fonction appelée dans le frontend GDB de XCode, ici _SCORE est 0. Called Function http://img156.imageshack.us/img156/1109/screenshot20100502at135.png
- (void) addScore:(NSInteger) _score {
score += _score;
JNLogString(@"Player can has %d points.. HURRAY!!!", score);
}
Marquer une question "mystère" ne vous aidera pas à obtenir des vues ou des réponses. À l'avenir, essayez de baliser les questions correctement. – Oded
code s'il vous plaît ... – swegi
Désolé Oded, je ne pouvais pas trouver les étiquettes populaires pour les assortir. Merci de les avoir ajoutés. – Nick