web-dev-qa-db-fra.com

Déboguer le point d'arrêt dans Swift Playground?

J'essaie d'ajouter un point d'arrêt dans la ligne # Gutter, mais aucun point d'arrêt n'est ajouté lorsque je le fais dans la cour de récréation. Est-ce possible ou existe-t-il un autre moyen de définir des points d'arrêt dans la cour de récréation?

enter image description here

42
TruMan1

Il n'y a pas de débogueur, vous ne pouvez donc pas ajouter de points d'arrêt.

44
do it better

Matt, je n'ai pas pu entrer de code dans les commentaires, voici donc une meilleure vue de l'utilisation d'une variable sur une ligne seule pour la "déboguer".

for index in 1...5  {
    dosomething(foo);
    foo;
}

Ensuite, vous pouvez cliquer sur le globe oculaire sur le côté droit pour voir un historique de foo tel qu'il a été modifié dans la boucle.

2
netskink

Si vous souhaitez suspendre l'exécution d'une aire de jeux pour avoir un aperçu de ce qui se passe, vous pouvez utiliser sleep. Les informations que vous pouvez obtenir ne sont pas aussi précises que celles que vous pouvez obtenir de lldb.

Pour ce faire, vous devrez ajouter import Foundation En haut de votre aire de jeux.

Ensuite, où que vous souhaitiez suspendre l'exécution, vous pouvez ajouter ceci:

sleep(10) // 10 second pause...you can make the number whatever you want

1
Adrian

Je mouille juste les pieds dans Swift, mais je pense que l'idée de la cour de récréation est de montrer l'état changeant comme si vous couriez en débogage et enregistriez tous les changements de variables. Il n'y a pas vraiment besoin d'un point d'arrêt car vous pouvez voir l'état à n'importe quel "moment". Je pense qu'il me faudra un certain temps pour m'y habituer, après avoir utilisé un débogueur pendant> 30 ans, mais cela devrait être très utile pour de petits morceaux de code de test isolé, surtout pendant que j'apprends la langue.

0
William T. Mallard