VC++ ошибки определяются не в том месте
От: objMihail Россия  
Дата: 30.10.10 07:57
Оценка:
Не подскажите, почему так получается, что студия показывает ошибки в коде совсем не там, где они на самом деле имеются? Т.е. ошибается, например на 5 строк или больше. Кто-нибудь с этим сталкивался? Стало совсем невозможно отлаживать программы, приходится искать ошибки фактически по всему классу.

А после того как чудом отлажу все ошибки компиляции, скорее всего не будут работать брейкпоинты во время отладки. И если где ошибка во время выполнения произойдёт — покажется ошибка в дизассембированном коде вместо исходника — как-будто у программы нет исходника.

Такое впечатление, что студия где-то кеширует исходник программы и проверяет ошибки в кешированной версии, а кеш этот обновляет когда вздумается.

Студия 2008-ая.
Re: VC++ ошибки определяются не в том месте
От: okman Беларусь https://searchinform.ru/
Дата: 30.10.10 08:17
Оценка:
Здравствуйте, objMihail, Вы писали:

M>Не подскажите, почему так получается, что студия показывает ошибки в коде совсем не там, где они на самом деле имеются? Т.е. ошибается, например на 5 строк или больше. Кто-нибудь с этим сталкивался? Стало совсем невозможно отлаживать программы, приходится искать ошибки фактически по всему классу.


M>А после того как чудом отлажу все ошибки компиляции, скорее всего не будут работать брейкпоинты во время отладки. И если где ошибка во время выполнения произойдёт — покажется ошибка в дизассембированном коде вместо исходника — как-будто у программы нет исходника.


M>Такое впечатление, что студия где-то кеширует исходник программы и проверяет ошибки в кешированной версии, а кеш этот обновляет когда вздумается.


M>Студия 2008-ая.


Не сталкивался. Может быть, это как-то связано precompiled headers ?
Re: VC++ ошибки определяются не в том месте
От: okman Беларусь https://searchinform.ru/
Дата: 30.10.10 08:26
Оценка: 1 (1) +1
Здравствуйте, objMihail.

Можно в качестве решения попробовать пересобрать файлы проекта, относящиеся к Visual Studio.
Или, например, удалить .ncb файл (база данных IntelliSense) — студия пересоберет его заново при
очередном открытии проекта.
Re[2]: VC++ ошибки определяются не в том месте
От: objMihail Россия  
Дата: 30.10.10 08:30
Оценка:
Здравствуйте, okman, Вы писали:

O>Не сталкивался. Может быть, это как-то связано precompiled headers ?


Не знаю, настройки все по умолчанию... консольное приложение C++, ставлю галочку "пустой проект".
Re: VC++ ошибки определяются не в том месте
От: Hibiscus Россия  
Дата: 30.10.10 11:03
Оценка:
Здравствуйте, objMihail, Вы писали:

M>Не подскажите, почему так получается, что студия показывает ошибки в коде совсем не там, где они на самом деле имеются? Т.е. ошибается, например на 5 строк или больше. Кто-нибудь с этим сталкивался? Стало совсем невозможно отлаживать программы, приходится искать ошибки фактически по всему классу.


M>А после того как чудом отлажу все ошибки компиляции, скорее всего не будут работать брейкпоинты во время отладки. И если где ошибка во время выполнения произойдёт — покажется ошибка в дизассембированном коде вместо исходника — как-будто у программы нет исходника.


M>Такое впечатление, что студия где-то кеширует исходник программы и проверяет ошибки в кешированной версии, а кеш этот обновляет когда вздумается.


M>Студия 2008-ая.


Попробуй еще как вариант поставить SP1. С брейкпоинтами такое бывает, помогает, как писали выше, пересборка солюшена. Лучше использовать сначала Clean Solution, потом только Rebuild. Что делать с ошибками не в тех строках, не знаю
Re: VC++ ошибки определяются не в том месте
От: objMihail Россия  
Дата: 01.11.10 03:02
Оценка: +1
Всё, разобрался. Какие-то глюки в студии были. Код заработал, после того, как я его прогнал через текст-бокс создания поста. Т.е. вставил сюда весь код из студии, потом скопировал обратно в студию и все ошибки исчезли . Это тут фича такая наверное, очень полезная.
Re: VC++ ошибки определяются не в том месте
От: Erop Россия  
Дата: 01.11.10 08:14
Оценка: +1
Здравствуйте, objMihail, Вы писали:

M>Студия 2008-ая.


возможно у тебя файлы юникодные и там содержатся символы, которые иногда интерпретируются, как концы строк, а иногда нет.
Попробуй выяснить символы с какими кодами есть в твоих исходниках, либо как-нибудь конвертни текст.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re: VC++ ошибки определяются не в том месте
От: MasterZiv СССР  
Дата: 04.11.10 12:03
Оценка:
On 30.10.2010 11:57, objMihail wrote:

> Не подскажите, почему так получается, что студия показывает ошибки в коде совсем

> не там, где они на самом деле имеются? Т.е. ошибается, например на 5 строк или
> больше. Кто-нибудь с этим сталкивался? Стало совсем невозможно отлаживать

Скорее всего, всё очень просто. Ты компилируешь один код, а смотришь в IDE на
другой код (другой его вариант). Так может быть по многим причинам. Просто нужно
проверить. Это легко. Удаляешь в месте сборки все конечные и промежуточные
продукции, меняешь код, внося специально синтаксическую ошибку. Если собирается
-- то это оно самое.
Posted via RSDN NNTP Server 2.1 beta
Re[2]: VC++ ошибки определяются не в том месте
От: MasterZiv СССР  
Дата: 04.11.10 12:08
Оценка:
On 04.11.2010 15:03, MasterZiv wrote:

Вообще, почитав топик, был поражён, на сколько богата фантазия у народа.
Posted via RSDN NNTP Server 2.1 beta
Re[2]: VC++ ошибки определяются не в том месте
От: objMihail Россия  
Дата: 04.11.10 20:24
Оценка:
Здравствуйте, MasterZiv, Вы писали:

MZ>Скорее всего, всё очень просто. Ты компилируешь один код, а смотришь в IDE на

MZ>другой код (другой его вариант). Так может быть по многим причинам. Просто нужно
MZ>проверить. Это легко. Удаляешь в месте сборки все конечные и промежуточные
MZ>продукции, меняешь код, внося специально синтаксическую ошибку. Если собирается
MZ>-- то это оно самое.

Спасибо, учту на будущее. Интересно, а по каким таким причинам? Просто, помню, как-то раз открыл студию, а там позавчерашний код, т.е. изменения все в того момента пропали. Долго думал в чем дело, искал где студия этот файлик откопала, потом как-то снова актуальный появился.
Re[3]: VC++ ошибки определяются не в том месте
От: MasterZiv СССР  
Дата: 08.11.10 09:20
Оценка:
On 04.11.2010 23:24, objMihail wrote:

> Спасибо, учту на будущее. Интересно, а по каким таким причинам? Просто, помню,


Да по многим. Не знаю. Как минимум от версии студии зависит.
Posted via RSDN NNTP Server 2.1 beta
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.