Успешность сборки не очень зависит от того, работают ли точки останова, за исключением того, что если у вас нет успешно созданного исполняемого файла, то нет ничего для отладки.
Когда вы меняете исходный кодкод, он больше не "синхронизирован" с кодом, который использовался для создания исполняемого файла. Это по сути не означает, что исполняемый файл больше не является отлаживаемым (в нем все еще есть символы и тому подобное), но Visual Studio представляет собой графическую среду IDE, отладчик которой интегрирован в редактор исходного кода.
Еслиу него больше нет этого исходного кода, эта интеграция не будет работать должным образом, и это включает точки останова, которые вы установили в строке X . Что такое линия X сейчас? В результате они отключаются, чтобы избежать путаницы.
Просто убедитесь, что вы отлаживаете программу, так как она в настоящий момент стоит, согласно источнику.
(Примечание: это иногда застревает. Мне иногда приходилось делать Clean All, чтобы заставить точки останова снова работать, даже если я не менял код. Но это должно быть очень редко.)