this debugging option: Require source files to exactly match the original version
This is from MSDN:
Tells the debugger to verify that a source file matches the version of the source code used to build the executable you are debugging. If the version does not match, you will be prompted to find matching source. If matching source is not found, the source code will not be displayed during debugging.
But still I do not understand it! So is it better to select it or unselect it?
Situation:
You have loaded in your editor a version of a file which is different than the one compiled into the executable you are debugging.
If the option is selected, and you try to debug code in that file, you will be prompted to find the right one, or else you will not be able to step into or break on any of that file’s functions. (I think the pop-up dialog also allows you to select “use this version anyway”).
If the option is not selected, you will see your version of the file. However, the code you see may be very different from the code that is executing. The breakpoint will be displayed on the line number matching the old file. It may show up in a blank line, or a comment, or some other function entirely.
In general, you should select it, so that you know that what you are seeing is what you are running.