c++ {}를 사용하여 tuple에 값을 넣는 방식에서 오류가 납니다.

tuple<int, int> A;
A = {1, 2};

이러한 방식으로 튜플에 값을 넣어 소스를 짜고 온라인 저지에 제출을 했는데 아무 이상없이 ACCEPTED가 나옵니다. 하지만 코드 블럭에서 컴파일을 하려 하니 에러가 뜨더군요… make_tuple을 사용하여 튜플을 생성하면 간단히 해결 될 문제지만 왜 코드블럭에서는 저러한 방식으로 {}를 사용하면 오류가 나는지 궁금합니다. 아마 컴파일러의 버전? 같은 것과 상관이 있는 건지도 모르겠지만 관련하여 지식이 너무나 부족하여 고민하다 질문 드립니다.

컴파일 옵션에서 C++ 버전을 설정할 수 있습니다. gcc라면 -std=c++17을 사용하세요.

3 Likes