![[C++] C++ dynamic_cast와 RTTI](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F48Mxb%2Fbtsd0nicUMH%2F95f7Q8HQSWQA4wIrI0guz0%2Fimg.png)
카테고리 없음2023. 5. 7. 21:18[C++] C++ dynamic_cast와 RTTI
제가 상속관계에서 형변환을 할 때와 virtual 유무에 대해 햇갈렸던 부분들을 정리한 글입니다. (틀린 부분있다면 말해주시면 감사하겠습니다) 먼저 형변환의 방법으로는 int a = 10; float b = (float)a; // 옛날 C 스타일 (구식) float c = float(a); // C++ 스타일 (신식) 위와 같은 방법과 C++의 형변환 연산자 아래의 4가지가 있습니다. - static_cast : 기본 자료형 간의 형변환과 클래스 상속관계에서의 형변환만 허용한다. 명시적 형변환 (C스타일 보다 안전하다) - const_cast : 포인터와 참조자의 const 성향을 제거하는 형 변환 - dynamic_cast : 상속관계에서의 안전한 형변환 - reinterpret_cast : 상관없는 ..
![[C++] vftable](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbRbcNK%2FbtsbTuO843b%2FHedizzC5npGkHCiKJTKQS0%2Fimg.png)
CPP2023. 4. 21. 18:14[C++] vftable
이번글은 C++의 다형성의 가상함수에 대한 글입니다. C++ 다형성에 대해서 전부는 다룰 수 없고 제가 이해한 내용중에서도 "정적 바인딩", "동적 바인딩", "가상 함수", "vftable", "순수 가상함수", "추상 클래스" 정도에 대해서만 다룰려고 합니다. 먼저 아래의 코드에서 class A { public: void Func() { cout