g ++에서 C ++ 11을 어떻게 사용합니까? -o main $ ./main 그리고

현재 gedit에 모든 코드를 입력하고 터미널을 사용하여 프로그램을 컴파일하고 있습니다. 그렇게하려면 다음을 입력하십시오.

$ g++ main.cpp -o main
$ ./main

그리고 이것은 효과가 있습니다. 그러나 C ++ 11을 사용하지 않습니다. C ++ 버전을 확인하고 C ++ 11을 사용하여 터미널을 통해 컴파일하는 방법은 무엇입니까?



답변

-std=c++11플래그 를 사용하면 됩니다. 예를 들면 다음과 같습니다.

g++ -std=c++11 -Wall -Wextra -Werror main.cpp -o main

이 모드는 -std=c++11명령 줄 플래그 -std=gnu++11를 사용 하여 선택 하거나 GNU 확장을 활성화 할 수도 있습니다 ( source ).

아래의 다른 플래그에 대한 설명을 참조하십시오. 나는 적어도 그 오류 플래그를 사용하면 장기적으로 인생을 더 쉽게 만들 것이라고 믿습니다. 스크립트가 무엇을하는지 더 잘 알고 나면 결과를 얻는 데 필요한 경우 경고를 생략 할 수 있지만 표준은 아닙니다. 이것이 도움이되기를 바랍니다. 여기 읽기 시작 하기 좋은 곳 이 있습니다.

  • -Wall — 모든 주요 경고를 활성화합니다.
  • -Wextra — 다른 중요한 경고를 활성화합니다.
  • -Werror— 모든 경고를 오류로 만들고 경고가보고되면 컴파일이 실패 합니다.

출처 :

  1. GCC : 옵션 요약
  2. GCC : 경고 요청 또는 억제 옵션