2014-11-18 5 views
0
다음 줄이 나에게 ( ; 예상) 오류 나는

배열 C++ 11

std::array<int, 5> a2 = {3, 2, 1,10,12}; 

내가 노력하고 있습니다를 코드의 다음 줄을 컴파일 할 수 있어요 그러나

std::array<int, 5> i_array1{ {3, 4, 5, 1, 2} }; 

을 제공으로 집계 초기화를 사용하는 방법

새로운 배열 컨테이너에 익숙해지기. Visual Studio 2012 Ultimate을 사용하고 있습니다. 도움이 필요하십니까? 감사합니다.

+1

첫 번째 버전은 정상입니다. 아마도 컴파일러가 C++ 11을 완전히 지원하지 않을 수도 있습니다. – juanchopanza

+2

IIRC, 이것은 VS2012에서 완전히 구현되지 않았습니다. 그것은 VS2013에서 컴파일 – Niall

+0

어떻게 컴파일러를 지원 하는가? –

답변

1

this page on MSDN에 따르면 Visual Studio 2012는 초기화 프로그램 목록을 지원하지 않지만 2013은 지원합니다.

+0

고맙습니다. 내 시간을 저장했습니다. –

+0

잘못되었습니다. 'std :: array'는 집합체이며'initializer_list'를 사용하지 않습니다. – Rapptz