https://stackoverflow.com/questions/9131763/eclipse-cdt-c11-c0x-support
Я пришел с этого сайта.
У меня есть проект на C ++, который компилируется с g ++ - 4.8 без проблем. Я просто хотел использовать std :: int8_t из файла cstdint.
Проблема в том, что индексатор eclipse не может разрешить имя.
Я пошел в файл csdint, а в начальном макросе он расширяет __cplusplus до 199711L вместо 201103L.
В моих настройках проекта я добавил std = c ++ 11 и в флагов компилятора я добавил GXX_EXPERIMENTAL_CXX0X
И я сказал, что он компилируется?
Это очень неприятно, я полагаю Я могу жить без индексатора, но опять же, какова цель IDE, если он дает мне ложные срабатывания ошибки.
Это зависит от вашего используемого типа проекта C ++ и вашей версии eclipse. У меня есть проект Makefile в Eclipse Mars.2 (4.5) с CDT 8.8.1.201602051005) Если у вас есть проект Makefile и вы видите элемент C/C++ General -> C/C++ Make Projects в своих свойствах проекта, вам также нужно перейти к вкладку «Параметры обнаружения» и добавить -std=c++11 к аргументам вызова компилятора.