본문 바로가기

Programming/C/C++

[C++] static_cast

안녕하세요 M1S Secur 입니다

이번 강의는 static_cast에대해 알아보는 시간인데요

static_cast는 C++ 스타일의 자료형 재정의시켜주는 연산자라 보면됩니다

 

C Style

-------------

int a = 5;

double b = (double)a;

return (INT_PTR)TRUE;

---------------

C++ Style

-------------

double b = static_cast<double>(a);

return static_cast<INT_PTR>(TRUE)

---------------

이번예제는 쉬우니 소스해석은넘어가겠습니다

일단 static_cast해석해드리겠습니다

static_cast는 위에서 설명해드렸듯이 재정의해 대입하는 연산자입니다

위 소스를 보듯이 캐스팅을하는거죠

int자료형으로 선언한 변수 a를 double b에 대입하는데 int자료형으로 선언한 변수 a를 double로 재정의하는거죠

이해되셨나요?

공식은 이렇습니다

static_cast<재정의할 타입>(변수명);

 

static_cast는 캐스팅연산자에서 가장쉬운 연산자입니다

이번것을 제대로 짚고 넘어가지않는다면 다음 캐스팅연산자에서 버벅일것입니다

이상 캐스팅연산자였습니다

감사합니다