2013-07-30 4 views
4

GCC4.8.1을 사용하여 C++ 응용 프로그램을 컴파일 할 때 -std 옵션을 지정하지 않으면 은 기본적으로 C++ 11 값을 적용합니까?-std GCC4.8.1 -std 기본값

나는 GCC 문서에서 단어를 읽었지만 여전히 확실하지 않다. 내 영어가 좋지 않아서 나쁘다.

-fext 숫자 - 리터럴 (C++ 및 오브젝티브 C++은 전용) GNU 정보로 첨자 허수 고정 소수점 또는 기계 정의 문자 번호를 사용. 이 옵션을 해제하면 이러한 접미사는 으로 C++ 11 사용자 정의 리터럴 숫자 접미어로 처리됩니다. 모든 pre-C++ 11 사투리와 모든 GNU dialect에 대해 기본값은 입니다. -std = C++ 98, -std = gnu ++ 98, -std = gnu ++ 11, -std = gnu + + 1y. 이 옵션은 기본적으로 ISO C++ 11 이상에서는 사용되지 않습니다 (-std = C++ 11, ...). 2018 년

+0

기본값이 무엇인지 알려주는 섹션은 아닙니다. '표준'과 같은 제목의 섹션을 찾으십시오. (나는 그것을 확인해 볼 것이지만, 지금은 접근 할 수 없다.) –

답변

10

업데이트 : GCC의 최신 버전으로, -std에 대한 기본 옵션은 이제 -std=gnu++14입니다. 어떤 C++ 언어의 방언 옵션을 지정하지 않은 경우


gcc standards 2.2 C++ 언어

기본에서, -std = GNU ++ (98)이다. 당신이 C++ 11 개 기능을 사용하려면

그래서, 당신은 옵션을 추가해야 -std=c++11 또는 -std=gnu++11 (대한 GNU 확장과 C++ 11) 남자-페이지에서

+0

감사합니다. –

+0

@DeanChen 글쎄, 당신은 C++로 질문 태그를 붙였다. C에 관심이 있으시면 잠시 후 답변에 추가하겠습니다. –

+0

그건 실수예요, 저는 C++에만 있습니다. 감사. –

2

:

 c++98 
     c++03 
      The 1998 ISO C++ standard plus the 2003 technical corrigendum and some additional 
      defect reports. Same as -ansi for C++ code. 

     gnu++98 
     gnu++03 
      GNU dialect of -std=c++98. This is the default for C++ code. 

누군가가 C++ 03에 무슨 일이 일어 났는지 궁금한가요?

관련 문제