Почему программа не перекомпилируется а запускается старый код?
В VS под x64 запускаю в режиме отладки код, все работает...до какого то определенного момента. Спустя некоторое количество запусков разного кода, при вводе очередного примера, почему то запускается предыдущий код а не текущий, при этом никаких исключений, ошибок, предупреждений не вылетает. Последующие попытки запустить любой код приводят к такому же результату.
Подскажите в чем проблема и как ее пофиксить?
evg_96, Чаще всего нечто похожее случается из-за инкрементной сборки, которая в VC включена по умолчанию.
Поэтому самый первый совет в этом случае - очистить результаты сборки и пересобрать с нуля.
Так же можно вручную удалить из каталога проекта все объектные и исполняемые файлы (да и вообще все лишнее). Для проекта VC достаточно файлов:
*.vcproj* и *.sln (они находятся в корневом каталоге проекта) и ваши исходники, конечно. Все остальное можно удалять - это файлы и каталоги полученные в результате сборки проекта и при следующей сборке они снова появятся.
Еще можно отменить саму инкрементную сборку в свойствах проекта: General->Enable managed incremental build. Это приведет к тому, что каждая сборка будет полностью пересобирать проект. Это увеличит время сборки, но для учебных проектов время сборки обычно не критичный параметр.
В вашем случае не совсем понятно что именно привело к такому поведению. Думаю для вас оптимальным вариантом на данном этапе будет отключение инкрементной сборки.
Программа запущенная на прошлом этапе скорее всего повисла.
При пересборке компилятор не смог удалить предыдущий exe файл, так как программа еще висит.