상세 컨텐츠

본문 제목

main() 함수와 이름 공간

Maya API/C++

by hwano 2014. 1. 1. 20:26

본문

 

 

main() 함수

 

int main()

{

명령문들

return 0;

}

 

int main() 부분을

함수 머리 ( function heading ) 라 하고

{}부분을

함수 몸체 ( function body ) 라 한다.

 

main() 함수는 프로그램 안에서 호출하는 부분이 없는데 이는 운영체제가 main() 함수를

호출하기 때문이다. 때문에 main() 함수의 머리는 main() 함수와 운영 체제 간의 연결 고리를 한다고 볼 수 있다.

 

 

int main()

 

함수는 자신을 호출한 함수에게 값을 되돌려 줄 수 있다. 이를 리턴값이라 한다.

앞에 붙은 int는 정수형을 리턴함을 알 수 있다.

 

main() 의 괄호가 비어 있는 것은 main() 함수가 어떠한 전달 인자도 요구하지 않는다는 뜻이다.

main() 함수가 자신을 호출한 함수로부터 어떠한 정보도 전달받지 않지만, 그 함수에게

정수값을 리턴한다는 뜻

 

C문법에서는 앞에 정수형일 경우 앞에 int가 생략이 되고 main() 만 쓰는 방식을 쓰지만

C++에서는 int를 생략하지 않는 경우가 많다.

 

 

int main( void )

 

C++에서 괄호안을 비워두는 것은 void를 생략하는 것과 같다.

 

 

void main()

 

void 리턴형은 함수가 값을 리턴하지 않는다는 것을 뜻한다. 이같은 스타일의 함수머리를 쓰면

return 명령문을 생략한다

 

 

일반적으로 C++ 프로그램에는 main() 한수가 반드시 하나 있어야 한다.

C++ 프로그램은 main() 함수로부터 실행을 개시한다. 

 

 

 

이름 공간

 

using namespace std;

 

이것을  using 지시자라 한다.  이름공간은 c++의 가장 새로운 기능이다.

에를 들어 여러 소프트웨어 개발업체들이 제공하는 코드들을 사용하여 프로그램을 작성하는 상황을 생각해보자

두 회사 제품 모두에 yaho() 라는 함수가 들어 있다. 컴파일러는 어느 회사의  yaho()를 써야 할지 모를것이다.

 

 

CompanyA::yaho()

CompanyB::yaho()

 

 

이렇게 표시하면 컴파일러는 두 버젼을 구별 할 수 있게 된다.

 

 

using std::cout()     // cout를 사용 할 수 있게 만든다

using std::cin()       // cin을 사용 할 수 있게 만든다

 

using namespace std;    //게으른 방식, 모든 이름을 사용 할 수 있게 만든다.

 

 

위 두줄은 std안의 각각의 명령어만 가져와 쓰는 방식이고

아래는 std에 속해 있는 모든 이름을 사용할 수 있게 만든다.

 

때문에 아랫줄처럼 하는 것을 게으른 방식 이라하며 std::를 생략하고 cin과 cout를 사용할 수 있다.

관련글 더보기