Ответ 1
Вы должны использовать концепцию файлов cpp.hint.
В принципе, вы должны поместить неприятные макросы в файл с именем "cpp.hint" и поместить этот файл в свой каталог решений (который не работает для меня, возможно, нестандартный макет проекта) ИЛИ в родительском каталоге где находятся ваши файлы кода. (работал у меня)
В этом файле вы просто помещаете неприятные макросы БЕЗ правого, поэтому в вашем случае:
#define foreach()
или, может быть, лучше
#define Q_FOREACH(variable, container)
#define foreach(...)
etc.
ЗАМЕЧАНИЕ, что вам может потребоваться перезагрузка или перезагрузка или скрипка с функцией для установки эффекта после установки определения в файл cpp.hint.
UPDATE. Действительно, я только что нашел, что мне нужно внести некоторые изменения в .cpp файл (например, добавить новую строку) для эффекта, который нужно выполнить. Исправление не применяется автоматически.
Исходная ссылка: http://msdn.microsoft.com/en-us/library/dd997977.aspx
Причина проблемы заключается в том, что производительность Intellisense (потенциально) резко снизилась бы, если бы ей пришлось анализировать все макросы в проекте, поэтому она только анализирует данные, указанные явно в 'cpp.hint'.
В исходном тексте Microsoft говорится, что вы можете использовать любой каталог в "Путь из корневого каталога исходного файла в каталог, содержащий исходный файл. В типичном проекте Visual С++ корневой каталог содержит решение или файл проекта.
Вы можете найти основной файл cpp.hint в папке "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcpackages" для справки