작성
·
306
0
dynamic_cast가 상속관계에서 무조건 장점만 있는게 아니라고 하시면서 설명을 해주셨는데
타입변환 3 : 포인터에서
원래는 C스타일로 형변환 해주었다면
ItemType에 따라서 static_cast를 해주면 dynamic_cast를 사용하는 것보다 빠르다고 하셨는데
가삼함수 테이블 주소를 찾아서 그 주소에 맞게 형변환을 하는 것보다
사진처럼 if문과같은 코드들이 있는데 이러한 코드들을 거쳐서 static_cast을 하는것이 dynamic_cast보다 동작 방식이 더 빠른 것인가요?
왜 type따라서 미리 분류하여 static_cast를 하는것이 더 빠른가요??
답변 1
0
그렇다고 알려져 있지만, 이런 부분은 환경에 따라 다를 수 있으니
직접 100만번씩 실행하게 해서 직접 시간 측정을 해보시기 바랍니다.
그리고 [타입 체크 후 static_cast]보다 더 좋은 방법이 있긴 한데
예를 들면 언리얼 엔진에서의 Cast는
자체적으로 타입 변환표를 만들어서 더 빠르게 구현을 빠르게 합니다.
(서버C++ 강의의 type_cast와 비슷한 원리)
알려주셔서 감사합니다!