Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 전체 네임스페이스 사용의 단점

<시간/>

C++에서는 다른 네임스페이스를 사용합니다. 자체 네임스페이스를 만들 수도 있습니다. 예를 들어 일반적으로 std라는 표준 네임스페이스를 사용합니다. 다음과 같은 구문을 작성합니다.

using namespace std;

표준 라이브러리에는 컨테이너, 알고리즘 등과 같은 애플리케이션을 구축하는 데 사용하는 공통 기능이 포함되어 있습니다. 이러한 이름이 사용되는 이름이 공개된 경우(예:큐 클래스를 전역적으로 정의한 경우) 충돌 없이 같은 이름을 다시 사용합니다. 그래서 그들은 이 변경 사항을 포함하기 위해 std라는 네임스페이스를 만들었습니다.

using namespace 문은 존재하는 범위 내에서 각각의 앞에 std::접두사를 붙일 필요 없이 std 네임스페이스 아래의 모든 것을 사용 가능하게 만든다는 의미입니다.

이 방법은 예제 코드에서는 괜찮지만 전체 std 네임스페이스를 전역 네임스페이스로 가져오는 것은 네임스페이스의 목적을 무효화하고 이름 충돌을 유발할 수 있으므로 좋지 않습니다. 이러한 상황을 네임스페이스 오염이라고 합니다.