C++ Standard Library Technical Report Draft Update

C++ Standard Library Technical Report의 draft.

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1711.pdf

(위 링크를 통해 다운받는 것이 현재 매우 느리므로, 본인에게 요청하면, 직접 보내줄 수 있다.)

n1540에서의 커다란 변경사항이라면 fixed size sequence인 array container가 추가되었다는 것이다. 기존부터 알려져있었지만, 특이할만한 사항은, array container 역시 aggregate라서 일반적인 array 처럼 initializer list를 사용한 초기화가 가능하다는 것이다. 즉, 다음과 같은 문법이 가능하다.

array a = { { 1, 2, 3, 4, 5 }}; // boost
array a = { 1, 2, 3, 4, 5 }; // tr1

기존 Standard Library 상의 container들의 불편한 점 중의 하나가 multi-dimension container를 초기화하기가 매우 불편했다는 것인데, 이것으로 해결이 어느 정도 가능했으면 한다.

몇몇 compiler 구현에서는 TR1의 몇몇 component들을 제공하고 있지만, 아직 boost쪽에서도 논의 중인 정도이므로, private/proprietary solution으로 TR1의 container들을 손수 구현해보는 것도 의미있고, 재미도 있는 일일 것 같다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.