2013-09-22 4 views
3

Есть ли функция в VS 2010, которая позволяет мне посмотреть на значение переменной при ее изменении. Предположим, что у меня есть data type bool, и его значение равно false, и когда его значение изменяется на true, я попадаю в режим отладки или другой сценарий состоит в том, что у меня есть data type int, и когда его значение меняется, я попадаю в режим отладки.Особенность VS 2010

Основная причина, по которой я задаю этот вопрос, заключается в том, что я хочу проверить значение в моей игре XNA в методе обновления, а так как метод обновления выполняет 60 раз/сек, поэтому его довольно сложно сделать в режиме отладки.

+1

Условные точки останова - и, в частности, «изменились» - могут влиять на производительность. Лично я бы просто удостоверился, что все изменения в переменной пройдут через один маршрут (набор аксессуаров или метод набора) - и поместите там * регулярную * точку останова (возможно, после проверки «сравнить старое/предлагаемое значение») –

ответ

1

Вы можете задать условие на Breakpoint

[Щелчок правой кнопкой мыши на Breakpoint] -> Состояние

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

Он подходит в итерациях, но также имеет штраф за исполнение. Я не XNA парень, так что вы могли бы быть лучше реализуют некоторую Debug поддержки, что делает проверку условий, может быть, охраняемую с DEBUG: условным чеком

int value = 0; 
// some stuff changing value 
#if DEBUG 
    if (value == 42) 
    { 
     Debug.WriteLine(value); // set a breakpoint on this line 
    } 

#endif 

сгущенного, основанную на этом блоге Msdn VS2010 Tips and Tricks, который также поставляется с скриншотами.

+0

спасибо что помогло. –