2014-12-30 1 views
0
나는 현재 CodeBlocks를 사용하고

작동하지 않습니다 어떤 이유로 나에게 이상한 오류주고 계속 :는 CodeBlocks

오류

예를 들어이 작동하지 않습니다 .. decltype '

나는 다양한 다른 소스 코드를 시도하고 항상 날이 오류를 제공, 심지어 복사 나의 가이드 책에서 하나 붙여 넣기와 같은 메시지가 나타납니다 :

template<class T, class U> 
auto add(T t, U u) -> decltype(t + u) // this is where the error occurs... 
{ 
    return t + u; 
} 
+1

'Project-> Build Options'로 가서'-std = C++ 11' 상자를 클릭하십시오. – 0x499602D2

+0

지금은 빈 파일을 사용하고 있으므로 회색으로 표시되어 C++ 11 구문을 사용하려면 매번 새 프로젝트를 시작해야한다는 의미입니까? – TakShing

+0

decltype 및 auto가 C++ 11 기능인 경우 C++ 11로 코드를 컴파일해야합니다. –

답변

2

컴파일러가 C++ 11을 지원하지 않거나 지원이 활성화되어 있지 않아 일부 컴파일러 옵션을 추가해야합니다. 어떤 컴파일러 버전을 사용하고 있는지 알려주지 않았으므로,이 두 가지 가능성 중 어느 것을 말할 수는 없습니다.

GCC 또는 Clang을 사용하면 -std=c++11으로, 또는 이전 GCC 버전으로는 -std=c++0x으로 C++ 11을 사용할 수 있습니다.