C++ 기술 보고서 1

C++ 기술 보고서 1(Technical Report 1), TR1은 C++03 언어 표준을 위한 C++ 표준 라이브러리에 추가사항들을 제안하는 문서인 ISO/IEC TR 19768, C++ Library Extensions의 통상적 명칭이다. 정규 표현식, 스마트 포인터, 해시 테이블, 난수 발생기 등의 라이브러리가 들어 있다.

TR1은 특정한 표준을 의미하는 것이 아니라 일종의 초안 문서를 가리키는데, TR1의 제안사항 대부분이 C++11에 채택되어 있다.
C++11이 표준화 되기 전에도, 판매회사들은 이 보고서를 확장을 만들기 위한 가이드로 사용하였다. 이 보고서의 목표는 "널리 퍼져있는 현존하는 관행들을 하나의 확장된 C++ 표준 라이브러리로서 더 구축하는 것"이었다.

이 보고서는 C++ 라이브러리 확장들에 관한 초안 기술 보고서로서 초안의 형식으로 2005년에 배포되었고, 2007년에 ISO/IEC 표준 ISO/IEC TR 49768:2007로 발표되었다.

개요 
TR1의 내용은 그 자체로 표준이 아니라 앞으로 비준되어야 할 추가 사항들이다. 따라서 모든 컴파일러가 C++ 표준을 따르기 위해 TR1 요소들을 포함해야 하는 것은 아니다. 그러나 TR1의 대부분은 Boost에서 이용할 수 있고, 몇몇 컴파일러/라이브러리에는 그 요소들이 모두 구현되었다. TR1이 다음 표준인 C++11의 라이브러리들에 추가될 기능을 모두 포함하고 있지는 않다. 예를 들어, C++11은 TR1에서는 이용할 수 없는 스레드 지원 라이브러리를 포함한다. TR1에 새로이 포함될 요소들은 기존 라이브러리와 구별하기 위해 std::tr1 이름 공간으로 정의되었다. C++11 이후에 발표될 예정인 두 번째 기술 보고서, C++ Technical Report 2도 존재한다.

참고 문헌

외부 링크 
  Scott Meyers' Effective C++: TR1 Information - contains links to the TR1 proposal documents which provide background and rationale for the TR1 libraries.

C++ 라이브러리