Красное подчеркивание в visual studio

Обновлено: 06.07.2024

Я использую VS 2012, и он работал отлично, пока я не начал наблюдать какое-то смешное поведение. Когда я открываю свой код, он показывает красные подчеркивания, которые мы обычно видим, когда в нашем коде есть ошибка. Удивительно, что код компилирует все отлично. Я сделал следующие наблюдения, которые не являются нормальными вообще.

  • Красный Подчеркивает код
  • При очистке или создании решения нет ошибок.
  • red Подчеркивание исчезает в течение некоторого времени после того, как я построю/очистку решения, но вернусь в конце концов.
  • Из-за этого мой intellisense прекратил работать.
  • Я не могу щелкнуть правой кнопкой мыши по любому компоненту и перейти к его определению.

Контуры с верхней части головы и могут быть неправильными

Visual Studio 2017:

Закрытие Visual Studio и удаление папки .vs расположенной в каталоге решения, помогли мне.

Эта папка имеет hidden атрибут. Возможно, вам придется изменить настройки в параметрах папки, чтобы показать скрытые файлы.

У этой проблемы была проблема при работе с решением, созданным в Visual Studio 2012, но работающим в 2013 году. Я закрыл Visual Studio, удалил все каталоги \bin и\obj, и проблема исчезла.

У вас есть плагины, установленные как resharper? У меня были проблемы с плохим плагином.

Попробуйте запустить визуальную студию в безопасном режиме, чтобы предотвратить запуск плагинов.

Для меня эта проблема возникла, когда я снова выгрузил и перезагрузил проект. Я работал у меня, надеюсь, что это сработает и для вас:)

У меня была эта проблема, и она была связана с ReSharper.

Шаги решения для меня:

1) Отключить ReSharper

2) Создание решения

3) ReEnable ReSharper

Что для меня работает, это удалить индексный файл IntelliSense.

Файл IntelliSense находится в том же каталоге, что и ваше решение.

Это имя файла - SolutionName.sdf

Просто удалите этот файл, снова откройте решение, и IntelliSense начнет перестраивать свой индексный файл. После этого проблема исчезнет.

Это работало для меня в Visual Studio Enterprise 2017:

Перейдите в Инструменты> Параметры> Текстовый редактор> JavaSCript/TypeScript> Linting> Общие

отмените выбор "Включить ESLint"

Просто обновите проект/решение. Это будет решено.

Я также столкнулся с этим и смог вернуть Visual Studio в нормальное состояние, выполнив следующие действия:

  1. Определите проект, из которого исходит красный код
  2. Удалите проект красной линии из ссылок, где он используется (ProjectName\References - щелкните правой кнопкой мыши, добавьте ссылки, снимите флажок с проекта красной линии)
  3. Построить (вы должны получить ошибки сейчас)
  4. Повторно добавьте ссылку на проект, который был только что удален
  5. Строить снова
  6. Красные линии должны быть удалены, и проект должен быть построен!

Возможно, поздно добавить, но надеюсь, что это может помочь кому-то. У меня была схожая проблема, когда я видел много красных squiggles в нескольких файлах. Я попробовал все предложенные выше варианты, но ничего не работало. В тот момент, когда я начал просматривать классы, структуры в других файлах, для которых у жалобных файлов были ссылки, проблема исчезла. По какой-то причине казалось, что intellisense не смогла самостоятельно решить свои зависимости.

Для меня я однажды включил ведение журнала фьюжн для отладки некоторых ошибок зависимостей сборки (fuslogvw из приглашения CMD). Это было несколько месяцев назад, и с тех пор я переживал гораздо более медленные времена сборки (5-7 минут). Я также полностью забыл, что я оставил их включенными. Эти журналы были моей бутылочной горловиной, и отключение их сделало итерацию намного быстрее. Надеюсь, это поможет кому-то!

Я столкнулся с этой проблемой с последней версией Visual Studio 2017.
Также отладочная версия моей программы работала очень медленно.

Я удалил файл решения .sln и создал новый.

Шаги, которые работают

  1. Откройте решение и сделайте все заново
  2. Закрыть решение
  3. Откройте решение и сделайте чистую
  4. Закрыть решение
  5. Откройте решение и сделайте все заново
  6. Закройте, а затем откройте решение, и оно должно быть хорошо. Это работает для меня каждый раз

Осторожно удалите некоторые из этих файлов настроек, так как вы потеряете сохраненные настройки отладки и т.д., И это может нанести больше вреда, чем вы думаете

У меня была такая же проблема с большим количеством красных линий в нескольких исходных файлах * cpp. Хотя код скомпилирован отлично. Ни одно из других решений не помогло мне.

Затем я заметил, что заголовочный файл был включен дважды в один файл *.cpp. Я удалил второй и - все было хорошо.

Включение файла заголовка дважды в один и тот же файл *.cpp, по-видимому, не является проблемой для компилятора, но для части intellisense.

В моем случае с VS 2017 у меня есть много "красных линий", показанных под всеми символами, определенными в сторонней библиотеке, но мой проект действительно может быть собран без проблем. Я перепробовал все предлагаемые решения (например, удалить папку .VS, перезапустить VS и т.д.), Но ни одно из них не сработало.

Кто-нибудь знает проблему и как снова восстановить этот функционал?

Недавно я столкнулся с той же проблемой с VS 2010. И вскоре я заметил это, угадайте что, я установил и удалил Resharper. Это случилось со мной на VS2013 после установки Resharper. Я думаю, что инструменты Visual Studio Power Tools тоже могли оказать влияние.

Обычно я люблю сбрасывать настройки после того, как возился с плагинами, так как они имеют тенденцию портить настройки: Tools → Import and Export Settings. → Reset all settings .

для меня это было слишком очевидно. спасибо, все отлично работает;) Такое же исправление сработало для VS2013 после выполнения вышеуказанного и компиляции. мне приходилось делать это в 2012 и 2013 годах. почему это должно быть выключено по умолчанию !! это было действительно полезно после того, как я удалил Resharper. Мне также нужно было проверить "Показывать живые семантические ошибки" в том же месте

О возможных причинах.

Для VS 2012 и 2013, если у вас есть более одного экземпляра Visual Studio на разных машинах, привязанных к одной «живой» учетной записи, и на одной из них установлен ReSharper, он отключает собственный IntelliSense и подчеркивает ошибки (чтобы заменить его собственными правилами) который будет синхронизирован через вашу учетную запись с другим компьютером без ReSharper.

Это сработало для исправления моих постоянных ошибок подчеркивания и отключения настроек xaml intellisense, очень полезно, спасибо! Чувак . Я только что понял это. Иногда это чертовски жутко.

Обычно это называется Disable Squiggl y или Wavy lines в Visual Studio.

Как у вас дела в Visual Studio 2013?

ИНСТРУМЕНТЫ -> Параметры . -> Текстовый редактор -> C / C ++ -> Дополнительно -> Отключить закорючки : True / False (в IntelliSense) -> Нажмите OK

должен, очевидно, выдать ошибку для этого символа одиночества. Но VS не подчеркивает это, пока я не закрою и не открою эту вкладку файла.

Решение : скопировали всю папку Unity Project (которая в основном похожа на обычную папку VS Solution) и работала с новой папкой, и эта проблема исчезла.

У меня была такая же проблема с 2017 годом. Была опция «отключить интеллект», убедитесь, что для нее установлено значение false.

Для Visual Studio 2017 действуйте согласно комментариям HeeJae в:

Здравствуй. вы, вероятно, столкнулись с известной проблемой. можешь попробовать это?

1. обновите до последней версии, если это не решит проблему

2. Перейдите в Инструменты \ Параметры \ Проекты и решения \ Общие и снимите флажок «Разрешить параллельную инициализацию проекта».

4. Удалите каталог «.vs» рядом с файлом решения.

5. снова открыть VS.

Вы можете повторно включить параметр «Разрешить параллельную инициализацию проекта» после того, как проблема будет решена.

Я пытался обновить VS, сбросить настройки VS, очистить кеш VS и все, что люди делают обычно, но никто из них не решил эту проблему! В конце концов, упомянутое решение сработало для меня волшебным образом.

Выгрузка и повторная загрузка того же проекта из решения делает свое дело. Просто щелкните проект правой кнопкой мыши и выберите «Выгрузить проект». После выгрузки снова щелкните правой кнопкой мыши тот же проект и выберите «Перезагрузить проект». Подсветка ошибки вернется.

Visual Studio включает эффективный интегрированный набор средств сборки и отладки проектов. Из этой статьи вы узнаете, как Visual Studio может помочь обнаружить проблемы в коде с помощью построения выходных данных, анализа кода, средств отладки и модульных тестов.

Мы разобрались, как работать с редактором, и написали код. Теперь необходимо убедиться, что код работает должным образом. Отладка в Visual Studio, как и в большинстве интегрированных сред разработки (IDE), осуществляется в два этапа: построение кода для обнаружения и устранения ошибок проекта и компилятора и выполнение кода для обнаружения ошибок времени выполнения и динамических ошибок.

Сборка кода

Существует два основных типа конфигурации сборки: отладка и выпуск. При использовании конфигурации отладка создается более крупный и медленный исполняемый файл, обеспечивающий более широкие интерактивные возможности отладки во время выполнения. Исполняемый файл конфигурации отладка никогда не следует отправлять. Конфигурация выпуск позволяет создать более быстрый оптимизированный исполняемый файл, подходящий для отправки (по крайней мере с точки зрения компилятора). По умолчанию используется конфигурация Отладка.

Самый простой способ выполнить сборку проекта — нажать клавишу F7, однако вы также можете начать сборку, выбрав в главном меню пункты Сборка > Собрать решение.

Выбор пункта меню "Построить проект" в Visual Studio

Процесс сборки можно наблюдать в окне Вывод в нижней части пользовательского интерфейса Visual Studio. Здесь отображаются ошибки, предупреждения и операции сборки. При наличии ошибок (или предупреждений выше заданного уровня) сборка завершится ошибкой. Можно щелкнуть ошибку и предупреждение, чтобы перейти к строке, где они возникли. Для перестроения проекта можно нажать клавишу F7 (чтобы перекомпилировать только файлы с ошибками) или CTRL+ALT+F7 (для чистого полного перестроения).

После успешного выполнения построения вы увидите примерно следующие результаты в окне Вывод:

Выходные данные при успешном построении в Visual Studio

Просмотр списка ошибок

Если вы внесли какие-либо изменения в код, который был ранее и успешно скомпилирован, возможно, возникнет ошибка. Если вы новичок в написании кода, возможно, их будет много. Ошибки иногда очевидны, например простая синтаксическая ошибка или неправильное имя переменной, а иногда их причину трудно выяснить, имея в распоряжении только зашифрованный код. Чтобы получить более четкое представление о проблеме, перейдите вниз окна Вывод сборки и щелкните вкладку Список ошибок. При этом вы перейдете к более организованному представлению ошибок и предупреждений для проекта и получите доступ к некоторым дополнительным параметрам.

Список ошибок и вывода в Visual Studio

Щелкните строку ошибки в окне Список ошибок, чтобы перейти в строку кода, в которой возникла ошибка. (Кроме того, номера строк можно включить, нажав клавиши Ctrl+Q, введя номера строк, а затем выбрав Включить или отключить отображение номеров строк в результатах. Это самый быстрый способ перехода в диалоговое окно Параметры, где можно включить номера строк.

Редактор Visual Studio с номерами строк

Параметр "Номера строк" в Visual Studio

Нажмите клавиши CTRL+G для быстрого перехода к номеру строки, в которой возникла ошибка.

Ошибку можно узнать по подчеркиванию красной волнистой линией Чтобы получить дополнительные сведения, наведите на нее указатель мыши. Внесите исправления, и подчеркивание исчезнет, хотя в результате исправления может возникнуть новая ошибка (это называется "регрессия").

Ошибка при наведении курсора мыши в Visual Studio

Пройдите список ошибок и устраните все ошибки в коде.

Окно ошибок отладчика в Visual Studio

Просмотр подробных сведений об ошибках

Многие ошибки трудны для восприятия, будучи представленными в терминах компилятора. В этом случае могут потребоваться дополнительные сведения. Из окна Список ошибок можно выполнить автоматический поиск в поисковой системе Bing для получения дополнительных сведений об ошибке или предупреждении. Щелкните правой кнопкой мыши по соответствующей строке записи и выберите Показать справочные сведения об ошибке из контекстного меню или щелкните гиперссылку с кодом ошибки в столбце код в списке ошибок.

Поиск Bing-списка ошибок в Visual Studio

В зависимости от настроек результаты поиска по коду и описанию ошибки откроются в веб-браузере либо во вкладке Visual Studio с результатами поиска Bing. Представленные результаты — из различных источников в Интернете, и, возможно, не все они будут полезными.

Анализ кода

Средства анализа выполняют поиск общих проблем в коде, которые могут привести к ошибкам времени выполнения или проблемам управления кодом.

Анализ кода C++

Чтобы выполнить анализ кода C++, запустите статический анализ кода. Запустить этот компонент после устранения всех очевидных ошибок, препятствующих успешной сборке, и потратить некоторое время, чтобы устранить создаваемые им предупреждения, — очень полезная привычка. Вы сможете избавиться от определенных будущих проблем, а также научитесь некоторым полезным приемам написания кода.

Нажмите клавиши ALT+F11 (или выберите в верхнем меню команду Анализ > Выполнить анализ кода в решении) для запуска статического анализа кода.

Элемент меню "Анализ кода" в Visual Studio

Все новые или обновленные предупреждения отображаются на вкладке Список ошибок в нижней части интегрированной среды разработки. Щелкните предупреждение для перехода к нему в коде.

Список ошибок с предупреждениями в Visual Studio

Использование быстрых действий для исправления или рефакторинга кода

Предварительный просмотр лампочки в Visual Studio

Текст "Быстрые действия недоступны"

Если вы привыкли работать с клавиатурой, вы можете использовать клавиши со стрелками и сочетание клавиш CTRL+ . для проверки возможностей оптимизации и очистки кода!

Запуск очистки кода

Кнопка очистки кода в Visual Studio 2019

Помимо форматирования пробелов, отступов и т. п., функция Очистка кода применяет определенные вами соглашения о стиле кода. Ваши настройки для каждого стиля кода считываются из файла EditorConfig, если такой существует в проекте, или из раздела Параметры стиля кода, который доступен через диалоговое окно Параметры.

Отладка выполняемого кода

Успешно завершив сборку кода и его очистку, запустите код, нажав клавишу F5 или выбрав команду Отладка > Начать отладку. Приложение будет запущено в среде отладки, и вы сможете пронаблюдать его поведение. Интегрированная среда разработки Visual Studio изменяется во время выполнения приложения: окно Вывод заменяется двумя новыми окнами (в конфигурации окон по умолчанию): окном с вкладками Видимые/Локальные/Контрольные значения и окном с вкладками Стек вызовов/Точки останова/Параметры исключений/Вывод. Эти окна имеют несколько вкладок, которые позволяют просмотреть и проверить переменные, потоки, стеки вызовов приложения и другие характеристики поведения во время выполнения приложения.

Окна "Видимые" и "Стек вызовов" Visual Studio

Остановите приложение, нажав клавиши SHIFT+F5 или кнопку Остановить. Кроме того, можно просто закрыть главное окно приложения (или диалоговое окно командной строки).

Задание простых точек останова

Точки останова — это один из самых простых и важных компонентов надежной отладки. Точка останова указывает, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти либо выполнение ветви кода. После установки или удаления точек останова перестраивать проект не нужно.

Установите точку останова, щелкнув дальнее поле строки, в которой требуется приостановить выполнение, или нажмите клавишу F9, чтобы установить точку останова в текущей строке кода. Выполнение кода прерывается (останавливается) перед инструкциями для этой строки кода.

Точка останова в Visual Studio

Чаще всего точки останова используются для решения следующих задач.

Чтобы точнее определить источник аварийного завершения или отсутствия отклика программы, расставьте точки останова вокруг и непосредственно в коде вызова метода, который, по вашему мнению, приводит к сбою. При выполнении кода в отладчике удаляйте, а затем снова устанавливайте точки останова ближе друг к другу, пока не найдете строку кода, вызывающую ошибку. Выполнение кода в отладчике описывается в следующем разделе.

При добавлении нового кода установите точку останова в его начале и выполните код, чтобы убедиться в том, что он работает правильно.

При реализации сложного поведения задайте точки останова для алгоритмического кода, чтобы можно было проверить значения переменных и данные при прерывании программы.

При написании кода C или C++ используйте точки останова для остановки кода, чтобы можно было проверить значения адреса (ищите значение NULL) и просмотреть значения счетчиков при отладке ошибок, связанных с памятью.

Дополнительные сведения о точках останова см. в статье Использование точек останова.

Проверка кода во время выполнения

Когда выполнение кода приостанавливается из-за достижения точки останова, строка кода, помеченная желтым цветом (текущий оператор), еще не выполнена. Вы можете выполнить текущий оператор и проверить, как изменились значения. Для выполнения кода в отладчике можно использовать ряд команд пошагового выполнения. Если отмеченный код является вызовом метода, вы можете выполнить шаг с заходом, нажав клавишу F11. Кроме того, можно выполнить шаг с обходом строки кода, нажав клавишу F10. Дополнительные команды и подробные сведения о пошаговом выполнении кода см. в статье Навигация по коду с помощью отладчика.

Снимок экрана: окно кода Visual Studio. Красная точка в левой области навигации указывает на точку останова в строке кода, помеченной желтым цветом.

Код, представленный на предыдущей иллюстрации, может выполняться отладчиком по одному оператору. Для этого можно нажимать клавишу F10 или F11 (так как здесь нет вызова метода, результат выполнения обеих команд будет одинаковым).

Когда отладчик приостанавливает выполнение, можно проверить переменные и стеки вызовов, чтобы разобраться в происходящем. Находятся ли значения в тех диапазонах, которые вы ожидали увидеть? Выполняются ли вызовы в правильном порядке?

Снимок экрана: окно кода Visual Studio. В помеченной желтым цветом строке кода выбрана переменная, для которой в раскрывающемся списке отображены текущие значения и ссылки.

Наведите курсор на переменную для просмотра ее текущего значения и ссылок. Если отображается значение, которое вы не ожидали увидеть, возможно, в предыдущем или вызывающем коде имеется ошибка. Более подробные сведения об отладке см. в статье об использовании отладчика.

Кроме того, Visual Studio выводит на экран окно средств диагностики, где можно наблюдать за загрузкой ЦП и использованием памяти приложением в динамике по времени. В дальнейшем в процессе разработки приложения эти средства можно применять для выявления случаев непредвиденно высокой загрузки ЦП или чрезмерного выделения памяти. Это окно можно использовать в сочетании с окном Контрольные значения и точками останова, чтобы определить причину непредвиденно интенсивного использования или неосвобожденных ресурсов. Дополнительные сведения см. в статье Обзор возможностей профилирования.

Запуск модульных тестов

Модульные тесты — это первая линия защиты от ошибок в коде, так как при правильном проведении они позволяют проверять отдельные "модули" кода (как правило, это отдельные функции), которые проще отлаживать, чем всю программу. Visual Studio устанавливает платформу модульного тестирования Майкрософт для управляемого и машинного кода. Платформа модульного тестирования используется для создания модульных тестов, их запуска и передачи результатов таких тестов. Завершив внесение изменений, запустите модульные тесты повторно, чтобы убедиться, что код по-прежнему работает правильно. При использовании выпуска Visual Studio Enterprise можно настроить автоматический запуск тестов после каждой сборки.

Чтобы приступить к работе с модульными тестами, ознакомьтесь со статьей Создание модульных тестов для кода с помощью IntelliTest.

Дополнительные сведения о модульных тестах в Visual Studio, а также о том, как они могут помочь в создании более качественного кода, см. в статье Основные сведения о модульных тестах.

enter image description here

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

2 ответа

Visual Studio 2013 отображает все мои файлы TypeScript с красным значком: Я понятия не имею, почему они красные темно-оранжевые (ошибок нет, и .cs/.json/etc. в порядке), но я нахожу это очень отвлекающим. Могу ли я сделать их black/green/anything-but-red'ish?

Вы должны объявить свойства (по умолчанию общедоступные) :

Таким образом, код отлично компилируется и работает.

Просто потому, что код создает допустимый JavaScript, не означает, что нет ошибок компиляции .

Скорее всего, вы увидите ошибки, если запустите проект через tsc

Похожие вопросы:

Visual Studio Code не любит мои сторонние библиотеки (это дает им красные sguigglies, когда они компилируются просто отлично). Я вижу это: Таким образом, зависимости здесь, которые имеют красные.

Как я могу отключить волнистые красные подчеркивания в Netbeans? Я не хочу, чтобы меня прерывали, когда я печатаю, и говорили, что наполовину законченная строка кода неверна.

Я использую VS 2012, и все это работало нормально, пока я не начал наблюдать какое-то забавное поведение. Когда я открываю свой код, он показывает красные подчеркивания, которые мы обычно видим.

Visual Studio 2013 отображает все мои файлы TypeScript с красным значком: Я понятия не имею, почему они красные темно-оранжевые (ошибок нет, и .cs/.json/etc. в порядке), но я нахожу это очень.

Я хочу запустить скрипт java с помощью visual studio code. Когда я запускаю скрипт, visual studio code возвращает Code language not supported or define . У меня есть плагин Code Runner в visual.

Содержит ли ссылка на цвет темы Visual Studio Code запись для красного подчеркивания, используемого редактором для обозначения, например, синтаксической ошибки?

Имея проблемы с зависимостями maven, есть красные подчеркивания под несколькими зависимостями в окне инструмента maven, есть идеи о том, как это решить? заранее спасибо скриншот intelliJ

Я установил python виртуального окружения. Я использую vs-код. Я импортировал scrapy в свой код, и vs code не распознает этот модуль. На самом деле, он хорошо работает, когда я его запускаю. scrapy.

в моем Visual Studio Code есть несколько странных красных квадратов. Есть идеи, откуда они берутся? Щелчки или зависание ничего не показывают. Они также не являются точками останова (точки.

Читайте также: