https://stackoverflow.com/questions/9131763/eclipse-cdt-c11-c0x-support
Я пришел с этого сайта.
У меня есть проект C ++, который без проблем компилируется с g ++ - 4.8. Я просто хотел использовать std :: int8_t из файла cstdint.
Проблема в том, что индексатор затмений не может разрешить имя.
Я перешел к файлу csdint, и в исходном макросе он расширяется с __cplusplus до 199711L вместо 201103L.
В настройках своего проекта я добавил std = c ++ 11, а во флаги компилятора добавил GXX_EXPERIMENTAL_CXX0X
И я сказал, что он компилируется?
Это очень разочарование, я полагаю, я могу жить без индексатора, но опять же, какова цель IDE, если она дает мне ложные срабатывания ошибки.
Я нашел свой ответ в здесь: http://www.eclipse.org/forums/index.php/t/490066/
Переходит к Свойствам проекта-> Пути и Символы-> Вкладка Символов-> C++ GNU-> __ cplusplus Символ и изменяется на 201103L
Это зависит от Вашего используемого типа проекта C++ и Вашей версии затмения. У меня есть проект Make-файла в Eclipse Марс 2 (4.5) с CDT 8.8.1.201602051005), Если Вы имеете проект Make-файла и видите объект C/C++ General
-> C/C++ Make Projects
в Ваших свойствах проекта, также необходимо перейти к вкладке "Discovery Options" и добавить -std=c++11
к аргументы вызова Компилятора .