이는 **C++의 포인터 암묵적 변환 규칙(Implicit Pointer Conversion Rules)**과**SFINAE(Substitution Failure Is Not An Error)**를 결합하여 두 클래스 간의 상속 관계를 확인하는 표준적인 방식입니다.제시해 주신 코드는 std::is_base_of_v의 구현 원리를 간결하게 보여주며,안전한 업캐스팅(Upcasting)만 허용하는 스마트 포인터 제약에 사용될 수 있습니다.🚀 템플릿 부분 특수화를 이용한 상속 확인 (IsChildOf)1. ⚙️ 핵심 원리: 암묵적 포인터 변환 검사이 코드의 핵심은 decltype 내부에서 Child*를 Parent*로 **암묵적으로 변환(Implicitly Convert)**할 수 있는지 컴파일러에게 묻는 것..
C++ 20에서 리플렉션 구현 : https://xtozero.tistory.com/8 C++에서 리플렉션 구현하기 xtozero.tistory.com 위의 사이트를 참고해서, C++17에서 리플렉션을 구현해보았다.Github : https://github.com/Winteradio/Reflection GitHub - Winteradio/Reflection: Project for reflection system on C++ like unreal engineProject for reflection system on C++ like unreal engine - Winteradio/Reflectiongithub.com 진행하면서 겪었던 문제점은 주로, 타입 추론과 템플릿이었다.타입 추론은 "decltype"의..
- Total
- Today
- Yesterday
- 뮤택스
- MemoryProject
- cmakelists
- 모던 C++ 챌린지
- 수학
- 포인터
- 메모리
- 외부단편화
- 보이드 포인터
- std::is_base_of
- SFINAE #Template #C++
- 세그먼테이션기법
- RHI
- 내부단편화
- GC
- pointer
- Reflection
- GameEngine
- cmake
- void pointer
- 로드리게스 회전 행렬
- FloatingPoint
- 증명
- logproject
- C++
- void* pointer
- RHICommand
- 개발 일지
- 페이징기법
- 그래픽스
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |