Отладка Visual Studio - я просто хочу пройтись по моей программе! - PullRequest
6 голосов
/ 22 февраля 2009

Я просто хочу пройтись по моей программе с Visual Studio 2005, но когда я пытаюсь скопировать то, что показал мне мой учитель (своего рода), я начинаю просматривать некоторые другие файлы, которые самопроизвольно появляются в моем окне. Их называют случайными вещами, такими как "xstring" и "ios", и я действительно расстроен. Пожалуйста, как мне пройти через мой код?

Ответы [ 4 ]

7 голосов
/ 07 июля 2009

Лучший способ избежать вмешательства таких методов - установить правила NoStepInto в реестре. Прочтите этот пост , чтобы узнать, как это сделать.

Если вы хотите избежать всей стандартной библиотеки, просто установите следующее правило:

10    std\:\:.*=NoStepInto

Для Visual Studio 2005 вам нужно добавить правило к следующему ключу

HKLM\Software\Microsoft\VisualStudio\8.0\NativeDE\StepOver

5 голосов
/ 22 февраля 2009

Почему это происходит: вы используете объекты из стандартной библиотеки шаблонов. Некоторые из ваших утверждений явно или неявно вызывают методы этих классов STL. Вы вступаете в эти методы с помощью своего отладчика.

Есть два способа исправить это:

  • Если вы знаете, что находитесь в состоянии, которое вызывает метод STL, тогда выберите команду «Перешагнуть» (F10) отладчика вместо его «Шаг в» (F11). 1008 *

  • Если вы попали в один из этих методов по ошибке, воспользуйтесь командой отладчика «Step Out» (Shift-F11).

1 голос
/ 22 февраля 2009

Скорее всего, происходит то, что вы вступаете во встроенные методы в фреймворке. Когда это произойдет, просто нажмите «выйти», и вы вернетесь в свой собственный код.

Вы также можете использовать «перешагнуть» для тех методов, которые, как вы знаете, встроены - конечно, рискуя перешагнуть через методы, в которые вы хотите вступить.

Я рекомендую ставить точки останова на каждой строке, где вы хотите проверить состояние приложения - таким образом вы можете просто использовать кнопку воспроизведения (F5).

0 голосов
/ 22 февраля 2009

http://mark.michaelis.net/Blog/VisualStudioKeyboardShortcutsWrapupMSDNFlashFeb22009.aspx

По сути, вы должны использовать F10 (переход), а не F11 (переход), когда текущая строка кода содержит вызов не вашей функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...