KPlay의 코딩 그리고 잡동사니

가령, 프로그램을 하나 만드는데

A회사, B회사, C회사 총 3개의 회사의 라이브러리의 이름과 매개변수, 반환형 모두 똑같은 3개의 Func함수를

참조한다고 하자.

C언어로는 Func함수 호출문장을 입력하면 어떤 회사의 Func함수를 가져오라는건지

C++의 함수 오버로딩으로도 매개변수 선언까지 똑같아버리면 알 수 없게 된다.

어떻게 구분해야할까? C++에서는 이를위해 이름공간이라는 문법을 제공한다

이름도, 매개변수 선언도 똑같은 SimpleFunc라는 함수가 두개 있다.

본래라면, 컴파일 오류가 떠야하지만 다른 namespace안에 넣어줬기 때문에

main함수에서 어떤 이름공간의 함수인지 써주면 정상적으로 출력이 가능하다

" :: "은 범위 지정 연산자이다.

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band