Intellisense в vs2010 с C ++ - PullRequest
       69

Intellisense в vs2010 с C ++

5 голосов
/ 02 марта 2011

Я не могу заставить intellisense работать. Даже если я начну с пустого проекта и добавлю в него только один файл, включающий только функцию include для iostream и функцию int main(), которая печатает символ с cout (в основном, самой базовой программой), если я пытаюсь получить intellisense, чтобы показать что-нибудь (скажем, набрав cout.) я получаю

IntelliSense: «Нет дополнительной информации» (дополнительную информацию см. В разделе «Устранение неполадок с IntelliSense в проектах C ++».)

В течение нескольких часов поиска в Google появилось несколько статей на сайтах Microsoft, в которых предлагается множество вещей, которые можно попробовать, или причины, по которым это не сработает. Я попробовал и удалил их всех, кроме одного, в котором упоминается, что stdafx.h должен быть на пути.

Что это за файл?
Как мне узнать, находится ли он на пути, если я не знаю, где он находится?
Какое это имеет отношение к IntelliSense?
Должен ли я добавить этот файл в свой проект, чтобы он заработал?

Спасибо.

Ответы [ 12 ]

8 голосов
/ 24 июля 2011

Я получил решение от Microsoft в http://connect.microsoft.com/VisualStudio/feedback/details/652838/intellisense-not-creating-ipch-folder

Это было связано с определенным Центром обновления Windows, установленным на WinXP.Решением было установить VS2010_SP1, а затем установить на него определенное обновление.

2 голосов
/ 22 июля 2011

Используете ли вы переключатель / UseEnv при открытии Visual Studio?Это нарушает Intellisense для проектов C ++.

2 голосов
/ 02 марта 2011

Посмотрите на этот вопрос: C ++ VS Express 2010 Intellisense

Чтобы решить эту проблему, нажмите CTRL+J.

РЕДАКТИРОВАТЬ: возможно, это проблема stdafx.h!

Добавьте файл stdafx.cpp и файл stdafx.h в проект!Используйте #include "stdafx.h" в качестве первой строки кода во всех ваших файлах .cpp.Включите все редко / никогда не меняющиеся и часто используемые заголовочные файлы в stdafx.h.Включите заголовки прекомпиляторов в своем проекте и пересоберите проект.

(Создайте фиктивный проект с предварительно скомпилированными заголовками, чтобы увидеть, как это было сделано)

1 голос
/ 31 июля 2014

Пожалуйста, найдите файл * .sdf (кэш базы данных Intellisence) в каталоге проекта, удалите его и перезапустите решение проекта, которое вернет ваш интеллект.

0 голосов
/ 21 мая 2014

Я знаю, что это старый вопрос, но у меня была похожая проблема IntelliSense: 'No additional information available' (See 'Troubleshooting IntelliSense in C++ Projects' for further help.). Моя проблема не была связана с stdafx.h.

Чтобы решить мою проблему, я закрыл VS2010, удалил файлы .sdf и .suo, а также каталог ipch внутри главной папки проекта.

Затем я перезапустил VS2010, дождался, пока он снова соберет все свои метаданные, и Intellisense (автозаполнение) сработал хорошо.

РЕДАКТИРОВАТЬ: я не знаю, если этот "маневр" имеет отрицательные побочные эффекты.

0 голосов
/ 25 октября 2013

baruch ответ сработал для меня.для завершения, вот также ссылка на VS2010-SP1: http://www.microsoft.com/en-us/download/details.aspx?id=23691

, поэтому сначала установка этого, а затем исправление, которое baruch ссылается, решило проблему, хотяВся установка заняла почти 1:30 час!(включая один перезапуск на моей машине с Win-XP.)

0 голосов
/ 08 мая 2013

WIN32; _WINDOWS; _DEBUG; Добавить _DEBUG;удалить Добавить _DEBUG;

0 голосов
/ 08 марта 2013

Я подумал, что должен упомянуть об этом:

В Visual Studio 2012 Я заметил, что Intellisense внезапно перестал работать в моем проекте C ++ (та же ошибка, что и описанный автор).Это произошло потому, что я добавил «DEBUG» в качестве определения препроцессора в «Свойства проекта» -> C / C ++ -> Preprocessor.

Как только я удалил его из этого списка и вместо этого поместил в код (#define DEBUG)intellisense неожиданно снова начал работать.

Я не знаю, почему это происходит, я просто знаю, что это портит мой intellisense.Надеюсь, это кому-нибудь поможет.

0 голосов
/ 04 марта 2011

IntelliSense хранит свои данные на SQL Server, который устанавливается во время установки VS2010.Я рекомендую вам проверить, работает ли служба SQL Server.

0 голосов
/ 03 марта 2011

Может быть, он так и не был установлен, вы пробовали установить ремонт? Стоит попробовать ..

...