Today
Total
Recent Posts
Recent Comments
Archives
05-19 10:54
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
반응형
관리 메뉴

UD_park's IT story

[C++] namespace의 기본 개념과 사용법 본문

IT - Language/C++

[C++] namespace의 기본 개념과 사용법

kingllzn 2018. 6. 11. 09:55
반응형
SMALL

(학습 서적 이것이 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에 관한

기본적 개념과 사용법에 관한

포스팅을 마치겠습니다


 

혹시 다른것에 대해 궁금하신게

있으시다면

댓글에 달아주세요

 

아는것이면 친절하게 쉽게

모르는것이면 또 제가 알아내서

친절하게 쉽게 포스팅해서

설명해드리겠습니다

 

 

 

 

 

 

 

반응형
LIST

'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
Comments