본문 바로가기
C언어

namespace 가 무엇일까? C++ 기초

by 여름코딩 2022. 12. 19.
반응형

안녕하세요 판타지코딩입니다!

 

C++로 작성된 코드를 보면 using namespace std; 라는 문장을 자주 볼 수 있습니다. 과연 어떤 의미를 가진 코드일까요? 오늘은 'namespace'가 어떨때 활용되는 것인지 공부해보겠습니다.

 

 

그럼 이름공간이 어떤 역할을 하는지 설명하기 위해서 간단한 코드를 보여드리겠습니다.

 

#include <iostream>

 

using namespace std;

 

int main()

{

      int a;

      a = 10;

 

      cout << a << endl;

 

      return 0;

}

 

int형 변수를 선언하고, 정수 10을 저장한 뒤에 cout 명령어로 출력하는 간단한 코드입니다.

 

이 코드에서 'using namespace std;' 라는 문장을 볼 수 있습니다. 헤더파일을 추가한 뒤에 메인 함수가 시작하기 전에 작성하였습니다. 그렇다면 저 문장 뒤에 오는 코드에서 저 문장을 필요로 한다는 의미이겠죠? 그 코드가 바로 cout << a << endl; 입니다. cout은 출력을 위한 명령어이고, endl은 다음 줄로 넘어가는 기능을 위해서 활용하는 명령어입니다.

 

using namespace std; 라는 코드는 std라는 이름 공간을 생략하기 위한 문장입니다. 그래서 cout << a << endl;은 저 코드를 작성하지 않았다면 아래와 같이 사용됩니다.

 

std::cout << a << std::endl;

 

이 코드를 보고 알 수 있는 것은 cout과 endl이 std라는 이름 공간 안에 있는 명령어라는 것입니다. 그러므로 매번 std를 작성하지 않도록 하기 위해서 'using namespace std;' 라는 코드를 통해 생략하도록 한 것입니다.

 

감사합니다!

반응형