Programming/Windows APi

Windows API_핸들(handle)에 대한 이해

Gyong_ 2020. 10. 25. 15:55

#1. 핸들(handle)이란 구체적인 어떤 대상에 붙여진 번호이다.

 

#2. 핸들은 정수값이며 대부분의 경우 32비트값이다.

 

#3. 운영체제가 발급하며 사용자는 쓰기만 한다.

 

#4. 같은 종류의 핸들끼리는 절대로 중복된 값을 가지지 않는다.

 

#5. 핸들은 정수형이므로 값을 가지겠지만 그 실제값이 무엇인지는 몰라도 상관없다.

-> 크고 작은 성질을 가지는 숫자가아니라 단순한 표식이다.

-> 핸들형 변수를 만들고 핸들을 대입받아 쓰고 난 후에는 그냥 버리면 된다.

-> 동적할당한 포인터의 실제 위치가 어디인가 신경쓸 필요없이 사용하다가 헤제하면 그만이다.

 

윈도우즈에서 핸들은 예외없이 접두어 H로 시작되며 핸들값을 저장하기 위해 별도의 데이터형까지 정의해 두고 있다.

HWND, HPEN, HBRUSH, HDC 등이 핸들을 담기 위한 데이터형들이며 모두 부호없는 정수형이다.