Как исправить вывод YCM «Использование необъявленного идентификатора ‘cout» или «Нет члена с именем ‘cout’ в пространстве имен ‘std» в редакторе Vim?

#c #vim

#c #vim

Вопрос:

Когда я пытаюсь использовать функцию ‘cout’ в обычном cpp-файле. ycm выводит эту ошибку.

Я поместил ‘using namespace std’ в заголовок этого файла, и когда я хочу использовать функцию ‘cout’ для печати чего-либо, YCM выдает ошибку.

Но если я переключусь на использование стандартного формата для использования ‘cout’ как ‘std:: cout’, YCM сообщает об ошибке ‘No member …’.

Вот мой .ycm_extra_conf.py и я уверен, что он включен в путь с пространством имен ‘std’, содержащим функцию ‘cout’. введите описание изображения здесь
введите описание изображения здесь

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

Комментарии:

1. Что произойдет , если вы удалите using namespace std; ? (и использовать std::cout )

2. Это все равно будет видно No member named 'cout' in namespace 'std'

3. Являются ли пути, которые вы записали в файле конфигурации, теми, которые отображаются с помощью clang -E -xc - -Wp,-v < /dev/null ? Если нет, то они должны это сделать.

4. Возможно, это из-за порядка расположения флагов, проблема кажется похожей на ту, что описана в этом выпуске Github .

5. Отлично! Эта проблема с github мне очень помогла!!! Большое спасибо!!