선언
관련 함수와 타입을 namespace 블록 안에 넣어 논리적 범위를 만든다.
프로젝트가 커지면 이름 충돌을 피하기 위해 관련 코드를 namespace 안에 두고, 필요한 범위에서만 이름을 가져온다.
관련 함수와 타입을 namespace 블록 안에 넣어 논리적 범위를 만든다.
A::foo처럼 어느 이름공간의 항목인지 명확하게 지정한다.
편리하지만 전역 using은 이름 충돌 가능성을 다시 키울 수 있다.
네임스페이스의 목표는 코드를 짧게 쓰는 것이 아니라, 이름의 소속을 명확히 해 충돌과 오해를 줄이는 것이다.