I am using Visual Studio 2010, and I know this feature is available in C++.
I need to debug some code, that changes a variable to several values. I want to debug the
In VisualStudio Code, you can set conditional breakpoints as follows:
Click in gutter to create a red-dot breakpoint
Choose Debug from left-side toolbar (icon: circle-slash over bug)
There are four sections: Variables, Watch, Call Stack and Breakpoints
Expand Breakpoints section so you can see the breakpoints
Right-Click on the desired breakpoint
Choose Edit Breakpoint...
Set your condition and press <Enter>. For example:
myvar == 1234
or
'stophere' in myvar
etc
References:
https://code.visualstudio.com/docs/editor/debugging#_conditional-breakpoints
It is certainly possible to set a condition like a variable receiving a certain value. This is known as a breakpoint condition. To create one, do the following.
Now the breakpoint will only hit when your conditional evaluates to true.
The second item you asked for, breaking when a variable's value changes for any reason, is known as a data breakpoint. These are only available for C++ code. It's not an option in C#, VB.NET or any other managed language.
You can use conditional breakpoints. I know your question was specific to VS2010, but be aware that from VS2012 on, you have to switch to the Managed Compatibility Mode, to use conditional breakpoints in Visual Basic. Why and how is described here:
switching-to-managed-compatibility-mode-in-visual-studio-2013
You can do both of these things.
var==value
and select "Is True".So long as you are using a Visual Studio edition other than Express, you can achieve this in C# using a breakpoint condition.
In the Breakpoint Condition dialog box, enter a valid expression in the Condition box, such as myLocalVariable > 1
and
...choose Has changed if you want to break when the value of the expression has changed.
To get to the Has changed option, right-click your breakpoint in the Breakpoints window and select Condition..., then check the screenshot below.
Add a breakpoint with F9 - right click it and select "Condition..."
- now you can add a boolean condition and the breakpoint will only get hit if that condition evaluates to true.