4. 네임스페이스(name space)가 궁금해
2021. 11. 24. 14:18ㆍc++/기초
함수에 있어서 기능은 다르지만 똑같은 명칭을 가진 함수가 존재할 경우 에러가 생깁니다.
그때 namespace가 필요하다.

자 이제 첫 번째 함수를 namespace로 감싸주자

저 함수를 사용을 해보면 (3,4를 argument로 넣어줌)

12라는 결과가 나오게 된다. namespace를 감싸지 않은 함수가 실행이 됨.
그렇다면 Myspace1속 함수를 사용하려면 어떡해야될까.

이렇게 사용해주면 된다. (namespace::함수(a, b))

즉 namespace는 같은 이름을 가진 함수가 중복되기 피하기 위해서 사용된다는 것을 알 수 있다.
함수 앞에 namespace를 일일히 쓰기 귀찮을 경우에

using namespace 해당 namespace
위 와 같은 형태로 사용해주면 된다.
namespace안에 namespace가 있을 수도 있다. 그럴 때는

이러한 형태로 써주면 된다.
반응형
'c++ > 기초' 카테고리의 다른 글
| 7. new 와 delete(동적 배열)이 궁금해. (0) | 2021.11.24 |
|---|---|
| 6. 포인터, 참조자 (reference)가 궁금해 (0) | 2021.11.24 |
| 5. 전처리기, 매크로(#define)가 궁금해 (0) | 2021.11.24 |
| 2. Visual Studio 단축키가 궁금해. 디버깅이 궁금해. (0) | 2021.11.24 |
| 1. 삼항 연산자가 궁금해, 비트 연산자가 궁금해 (0) | 2021.11.23 |