2010-05-27 7 views

Répondre

1

Le débogueur exécutera par défaut une version de débogage qui n'aura pas les optimisations activées.

Si les optimisations sont activées, vous remarquerez peut-être que "Step" et "Next" apparaissent parfois pour faire sauter le flux du programme. C'est parce que le compilateur réorganise parfois les instructions et que le débogueur fait de son mieux.

+0

Merci. Une seconde à la question, est-il possible d'activer les optimisations lors d'une exécution de débogage? Si c'est le cas, comment? – Faken

+0

Certaines optimisations peuvent fonctionner, mais certaines détruiront totalement votre capacité à déboguer. Quant à savoir si vous pouvez les activer lors du débogage dans VS, je ne sais pas avec certitude, mais je suppose que vous le pouvez probablement. – dicroce

+0

Je veux activer les optimisations pour certains tests de vitesse (donc les points d'arrêt ne seront pas là). Je suppose que c'est juste pour la commodité que je peux simplement appuyer sur le bouton courir et obtenir un temps. – Faken

0

Je suppose que cela dépend de ce que vous classeriez comme optimisations, mais surtout non. Par exemple, les versions récentes de VS appliquent l'optimisation de la valeur de retour (anonyme), au moins dans certains cas, même avec l'optimisation désactivée (/ O0) comme c'est le cas pour une version de débogage.

Si vous souhaitez déboguer du code optimisé, il est généralement plus facile de passer à une version de version, puis de lui indiquer de générer des informations de débogage. En théorie, vous pouvez activer l'optimisation dans une version de débogage, mais vous devez changer d'autres commutateurs pour le faire.

Questions connexes