C ++ 컴파일러를 C ++ 11로 업데이트하려고합니다. 나는 비트를 검색하고 난 내가 플래그를 사용해야한다는 결론에 도달했다 -std=c++0x
거나 -std=gnu++0x
,하지만 난 플래그에 대한 많은 것들을 모른다. 누구든지 나를 도울 수 있습니까? (우분투 12.04를 사용하고 있습니다.)
다음은 C ++ 11 (예 : 배열)에 포함 된 라이브러리를 사용하려고 할 때 컴파일러에서 발생하는 오류입니다.
#include <array>
#include <iostream>
int main()
{
std::array<int, 3> arr = {2, 3, 5};
...
}
이 파일에는 향후 ISO C ++ 표준 인 C ++ 0x에 대한 컴파일러 및 라이브러리 지원이 필요합니다. 이 지원은 현재 실험 중이며 -std = c ++ 0x 또는 -std = gnu ++ 0x 컴파일러 옵션으로 활성화해야합니다.
g++-4.6
기본적으로 제공 됩니다 (만 지원 -std=c++0x
)
g++
예 :) g++ -std=c++0x _filename_ && ./a.out
.
-std=c++11
대신 사용해야 합니다. 그래도 둘 다 허용됩니다.