이 글의 모든 예제 코드는 C++17 이상에서만 동작합니다. (GCC 7-8, MSVC 19.14) Nested namespace definition 중첩 네임스페이스 정의 만약 여러분이 outer라는 네임스페이스를 만들고 그 안에 inner라는 네임스페이스를 만든다면 namespace outer { namespace inner { // 어쩌구 저쩌구 } } 일반적으로 이렇게 작성하시겠죠, 하지만 이렇게 두줄이나 낭비할 필요가 있을까요? outer 네임스페이스는 inner 네임스페이스를 제외하면 '빈공간' 입니다. 굳이 중괄호를 두번씩 쓸 필요가 없겠죠. C++17에는 Nested namespace definition이 있습니다. namespace outer::inner { // 어쩌구 저쩌구 } 훨씬 ..