반응형
- namespace 요소에 접근하는 3가지 방법
- qualified name ( 완전한 이름 )을 사용한 방법.
- using declaration ( 선언 )을 사용한 방법.
- using directive ( 지시어 )를 사용한 방법.
#include "pch.h"
#include <iostream>
// Harry namespace
namespace Harry
{
void init() { printf("Harry Init\n"); }
void destroy() { printf("Harry destroy\n"); }
}
// global namespace
void init()
{
printf("Global init\n");
}
int main()
{
std::cout << "Harry World!\n";
// 1. 전체 이름 접근(qualified name)
Harry::init(); // OK
Harry::destroy(); // OK
// 2. using 선언 접근(using declaration)
using Harry::init;
init(); // OK
destroy() // Error
// 3. using 지시어 접근(using directive)
using namespace Harry;
init(); // OK
destroy(); // OK
// 4. global namespace(전역 함수 호출)
::init(); // OK
}
- C++의 모든 표준 라이브러리는 std namespace 안에 있다.
- C++ 표준 라이브러리를 사용하는 3가지 방법
- qualified name ( 완전한 이름 )을 사용한 방법 -> std::min(1, 2)
- using declaration ( 선언 )을 사용한 방법 -> using std::min;
- using directive ( 지시어 )를 사용한 방법 -> using namespace std;
- using namespace std;를 사용할 경우 이름 충돌에 주의 필요
- 표준 라이브러리를 완전한 이름을 사용하는 것이 좋다.
- 표준 라이브러리 헤더 파일 모양
- C : 파일 이름 뒤에 .h 를 붙인다. -> <stdio.h>
- C++ : 파일 이름 뒤에 .h 가 붙지 않는다. -> <cstdio>
- 사용자가 헤더를 만들때는 .h 를 붙이는 것이 관례이다. -> "myheader.h"
- C++에서 C언어 헤더 사용하는 방법
- 기존의 C언어 헤더 파일을 모두 계속 사용할 수 있다.
- C언어 헤더에서 '.h'를 제거하고 앞에 'c'를 붙여서 사용한다.
- <string.h> -> <cstring>
- <stdlib.h> -> <cstdlib>
- <math.h> -> <cmatch>
반응형
'프로그래밍 언어 > C++' 카테고리의 다른 글
C++ 함수 특징 #1 (0) | 2019.05.05 |
---|---|
C++ 제어문(if, switch)과 반복문(for) (0) | 2019.01.16 |
C++ 변수의 특징(variable) #2 (0) | 2019.01.15 |
C++ 변수의 특징(variable) #1 (0) | 2019.01.14 |
C++ 표준 입출력(Basic Input/Output) (1) | 2019.01.13 |