인프런 커뮤니티 질문&답변

부드러운 문어님의 프로필 이미지
부드러운 문어

작성한 질문수

홍정모의 따라하며 배우는 C++

1.13 네임스페이스 (명칭 공간)

using namespace MySpace1; 위치 관련 질문 드립니다.

작성

·

341

0

안녕하세요.
프로그래밍이 처음이라 잘 따라해 보고 있는데요..
 
1.
using namespace MySpace1; 을 3라인에 입력했을 때 error가 나는데 std와 무슨 차이 인가요???
1.14 전처리기와의 첫 만남(12:23)에서는 std를 함수 안으로 넣기도 해서요...
 
2.
main() 마지막을 return 0; 으로 끝나는 이유가 있나요?

답변 1

1

안녕하세요,

 

1. using namespace MySpace1; 를 사용하기 전에 MySpace1의 존재를 아래와 같이 알려야 합니다.

namespace MySpace1 

 

가령 질문자님의 코드를 아래와 수정하면 정상적으로 동작합니다.

물론 이 경우, 수업에서 들으신 대로 doSomething 함수의 범위를 명확히 설정하셔야 합니다^^

 

#include <iostream>
namespace MySpace1 {}
using namespace MySpace1;


using namespace std; //cout이 namespace std 안에 정의되어 있다. 

namespace MySpace1  //네임 스페이스 
{
	int doSomething(int a, int b)
	{
		return a + b;
	}
}


int main()
{
	cout << doSomething(3, 4) << endl; //네임 스페이스 호출 법
	cout << doSomething(3, 4) << endl;  //함수명만 쓰면 함수가 출력 됨

	return 0;
}

 

2. c 프로그램은 정상적으로 끝날 경우 운영체제에게 0을 알려주기 때문입니다.

프로그램을 실행하고 관리하는 프로그램은 운영체제입니다 (윈도우, 리눅스, 등..)

이 운영체제에게 "나 정상적으로 실행됐어!"라고 말하는 것과 같다고 보시면 됩니다.

부드러운 문어님의 프로필 이미지
부드러운 문어

작성한 질문수

질문하기