I have program that has a variable that should never change. However, somehow, it is being changed. Is there a way to have the debugger stop when that particular member variable is modified?
views:
381answers:
3You can set conditional breakpooint at places where the variable is used.
In Visual Studio set breakpoint by pressing F9 when your cursor at the line where you want to set breakpoint.
Next, right click on the breakpoint and select Condition.
Type your condition like
n != 5
Good luck.
Here's a link from MSDN.
Set a data breakpoint to stop execution whenever some variable changes.
Break on the initialization of your variable, or someplace where your variable is visible - you need to be able get its address in memory. Then, from the menus choose Debug -> New Breakpoint -> New Data Breakpoint. Enter "&var
" (with var
replaced by the name of your variable.)
This will break into the debugger on the exact line of code that is modifying your variable.
More documentation here:
If it is being modified through an assignment or other direct update, the data breakpoint will work. However, if it is being modified via some other means - for example a buffer overwrite - I'm not sure if it will tell you exactly when it occurs. Just something to keep in mind.