UD_park's IT story
[C++] namespace의 기본 개념과 사용법 본문
(학습 서적 이것이 C++이다에서
내용 발췌하였습니다)
[보기용 예제 소스 코드에서 오류 발생시에
댓글이나 방명록에 글을 남겨 주시면 수정/보완하겠습니다]
이번 포스팅은 namespace의
기본 개념과 사용법에 대해
포스팅해보도록 하겠습니다
제가 공부하고있는 C++책에서는
namespace에 대한 정의를
C++가 지원하는 각종
요소(변수, 함수, 클래스 등)들을
한 범주로 묶어주기 위한 문법
이라고 설명하고 있습니다
이것 또한 제 나름의 방식으로
쉽게 설명해보겠습니다
예를들어서 은행같은
금융회사에 S/W를 제공하는
UD라는 한 회사가 있습니다
그 회사에서 제공하고 있는
금융회사는 총 3곳으로
간단하게 A, B, C 회사라고
부르겠습니다
그러면 UD라는 회사는
A, B, C 회사에 하나의 S/W를
쉽게 말해 복붙하고 조금씩 수정만하여
A', B', C'의 이름으로 제공한다고 하면
실제 기능은 다르더라도
함수나 변수 등의 이름이
중복되어 관리자가 관리하기에 어려움을
느낄 수 있을 뿐더러
만약에 A', B', C'의 S/W를
통합하려 한다면
중복에 의해 더 큰 문제들을
초래 시킬수 있습니다
namespace가 생긴 배경이
위의 예시의 일이 실제로 일어났기때문에
생겨났다고 합니다
namespace의 기본 문법은
namespace 이름
{
내용
}
이게 끝입니다 정말 간단합니다
그럼 사용법에 대해 소스코드로
알아보도록 하겠습니다
앞서 예시로 말씀드렸던 내용을
생각하시며 소스코드를 보면 더욱
이해가 빨리 되실겁니다
일단 A라는 namespace를 A금융회사
일단 B라는 namespace를 B금융회사라고
생각하시고 그 속에 똑같은 이름의 함수인
count를 사용했습니다
그러나 A회사의 count는 +기능이고
B회사의 count 는 *기능입니다
한 가지 팁 정보를 더 드리자면
메인 함수에서 37, 38번째 줄을 보시면
위의 std::cout 문과 비슷한 형태로
namespace를 쓰는 모습을
볼 수 있습니다
네 맞습니다 std 또한 네임스페이스입니다
A::count(num1, num2);
이 한줄로 설명을 하자면
A라는 namespace의 count를 쓰겠다!!
(num1과 num2값을 이용해)
대략 이렇게 해석이 가능합니다
그리고 메인에서의 두 값을 입력받아
함수를 호출하고 나온 값의
결과는 바로 아래와 같습니다
입력받은 두 수 4, 5를
A회사의 count는 +기능으로 9가 나오며
B회사의 count는 *기능으로 20이 나왔습니다
이상 auto에 관한
기본적 개념과 사용법에 관한
포스팅을 마치겠습니다
혹시 다른것에 대해 궁금하신게
있으시다면
댓글에 달아주세요
아는것이면 친절하게 쉽게
모르는것이면 또 제가 알아내서
친절하게 쉽게 포스팅해서
설명해드리겠습니다
'IT - Language > C++' 카테고리의 다른 글
[C++] 함수 템플릿에 대한 설명 (0) | 2018.06.14 |
---|---|
[C++] 동적할당에 대한 개념과 사용법 (0) | 2018.06.12 |
[C++] auto의 기본 개념과 사용법 (0) | 2018.06.11 |
[C++] & 참조자(Reference)란? (0) | 2018.06.08 |
[C++] typedef란? (3) | 2018.06.07 |