Ceci est vraiment bizarre et je me demande si je dois changer un peu mon style de codage ou si gdb me dérange.Déclarations de variables à l'intérieur d'une méthode provoquant une sortie garbage gdb avant l'instanciation
La structure d'un de mes méthodes ressemble à ceci:
{
// code that checks if this method needs to do something
// ...
// further down, I instantiate e.g. foo as an NSArray
NSArray *foo = bar;
// ...
}
Si je déboguer le code ci-dessus, j'arrive d'avoir une NSDictionary
tailles appelées. Parce que je suis l'instanciation foo quelques lignes dans la méthode, je continue à recevoir ces erreurs dans la console jusqu'à foo est créé:
-[__NSCFDictionary objectAtIndex:]: unrecognized selector sent to instance 0x541cb90
La raison pour laquelle cela se produit est que deux tailles et foo pointent en même 0x541cb90 mémoire. Mais comme je n'ai pas encore créé foo, je ne peux rien y faire. L'erreur apparaît à plusieurs reprises jusqu'à ce que je passe au point foo = bar, où il cesse d'apparaître. La raison pour laquelle il apparaît est que je pense parce qu'il essaie de me montrer les valeurs pour cela dans la fenêtre de la variable de débogage à droite.
Cela peut être lié à libXcodeDebuggerSupport.dylib is missing in iOS 4.2.1 development SDK
est-il pratique tout simplement mauvais de déclarer des variables « à travers » une méthode comme celui-ci? Il est inutile de déclarer toutes les variables que j'ai l'intention d'utiliser dans une méthode tout en haut, mais peut-être que je dois ...?
C'est ce que j'espérais. Merci d'avoir donné un deuxième avis sur celui-là. :) Donc la conclusion ici est que gdb ou Xcode ou les deux sont bugging sur moi. Je suppose que le radar est mon prochain arrêt. – Kalle