Есть ли способ отслеживать значения определенных переменных после окончания программы в Visual Studio? - PullRequest
1 голос
/ 18 июля 2010

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

Кто-нибудь знает способ выбора переменных и знает последнее значение, установленное для них после завершения программы - возможно, в Windows?

1 Ответ

1 голос
/ 18 июля 2010

Я не знаю ничего такого, что записывало бы каждое значение, когда-либо присвоенное каждой переменной в вашей программе, на случай, если вы захотите взглянуть на нее позже. С историческими способностями отладки VS2010 можно посмотреть на «ценности из прошлого», хотя я еще не использовал это, поэтому я не знаю, распространяется ли эта способность «за пределы смерти» процесса.

Вы также можете использовать точки трассировки (VS2008 и более поздние версии). Это как точки останова, но вместо остановки выполнения они просто выводят информацию в выходные данные отладки. Таким образом, вы можете добавить точку трассировки для переменной, чтобы при каждом ее изменении сообщалось о ее значении (в основном это то же самое, что распечатывать значения в вашем коде, но вам не нужно менять код, чтобы включить их, и вы можете их во время выполнения вашего кода).

Два простых подхода, которые будут работать практически для любой среды разработки:

  • Записывать значения в журнал приложения каждый раз, когда они меняются, а затем читать последние зарегистрированные записи. Если вы понимаете, что вам нужно 5 значений по всей программе, просто распечатайте их в выходные данные отладки, чтобы добавить в вашу программу всего несколько секунд. (Если вы не можете сделать это легко, значит, вы не очень хорошо инкапсулируете свои данные).

  • Поместите точку останова на деструктор интересующего вас класса или в начало процесса выключения непосредственно перед тем, как уничтожить объекты, или последнюю строку кода в вашей программе (для статики) ( и т.д.) и просто используйте отладчик для детализации данных.

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