Примечание: мой второй ответ. На основании комментария Кори Нельсона, поэтому я не претендую на кредит.
Если я вас правильно понимаю, вы хотите, чтобы Intellisense всплывал, как только вы наберете 'p'.
Ответ: Нет, VS2010 этого не сделает .
Intellisense включается для ":: p" или "std :: p", но не для простого "p". не имеет ничего общего с предварительно скомпилированными заголовками и не имеет порядка #include
. Это просто не будет.
В некоторых IDE, с которыми я работал в прошлом, есть настройка для включения / отключения завершения в этом случае (я помню, что видел это в некоторых версиях C ++ Builder), но я не смог найти его в VS2010.
Так почему же VS2010 этого не допустит? Ключевые слова могут вызвать проблемы, которые не стоит решать, но в этом ли причина? Я не знаю. Может быть, член команды VS мог бы пролить свет на это.
Обновление:
Я тестировал эту программу в новом проекте VS2010:
#include <string>
using namespace std;
int main()
{
stri
}
Нет всплывающих окон при наборе "stri".
"строка" появляется во всплывающем окне после Ctrl-пробела и отсутствует, когда я удаляю using namespace std;
, поэтому она правильно реагирует на using
.
После ввода ::
Intellisense активируется, а после ::s
предлагает SA_AccessType (из файла sourceannotations.h), поэтому список явно заполняется многими системными заголовками.
Если я наберу if
и заставлю всплывающее окно Intellisense, в списке нет if
. Если я затем наберу (
, как если бы я хотел набрать if(
, он исправляется до ifstream(
. Так что, если Intellisense будет всегда всплывать, было бы гораздо сложнее набирать ключевые слова.