
https://stackoverflow.com/questions/9131763/eclipse-cdt-c11-c0x-support
저는 그 웹사이트에서 왔습니다.
문제 없이 g++-4.8로 컴파일되는 C++ 프로젝트가 있습니다. cstdint 파일에서 std::int8_t를 사용하고 싶었습니다.
문제는 Eclipse 인덱서가 이름을 확인할 수 없다는 것입니다.
나는 csdint 파일로 이동했고 초기 매크로에서는 __cplusplus를 201103L 대신 199711L로 확장했습니다.
내 프로젝트 설정에서 std=c++11을 추가했고 컴파일러 플래그에 추가했습니다.GXX_EXPERIMENTAL_CXX0X
그리고 내가 그것이 컴파일된다고 말했나요?
매우 실망스럽습니다. 인덱서 없이도 살 수 있을 것 같지만, 오류 거짓 긍정을 제공하는 경우 IDE의 목적은 무엇입니까?
답변1
나는 여기에서 내 대답을 찾았습니다.http://www.eclipse.org/forums/index.php/t/490066/
프로젝트 속성->경로 및 기호->기호 탭->GNU C++->__cplusplus 기호로 이동하여 201103L로 변경합니다.
답변2
사용된 C++ 프로젝트 유형과 Eclipse 버전에 따라 다릅니다. CDT 8.8.1.201602051005가 포함된 Eclipse Mars.2(4.5)에 Makefile 프로젝트가 있습니다. Makefile 프로젝트가 있고 프로젝트 속성에서 C/C++ General
--> 항목이 표시되는 경우 C/C++ Make Projects
"검색 옵션" 탭으로 이동하여 -std=c++11
에 추가컴파일러 호출 인수.