"instanceof" 없이 C에서 객체 유형 결정
C에서 객체의 정확한 유형을 결정하기 위해 Java의 " instanceof" 키워드입니다. 여기에는 동적 캐스팅과 RTTI(런타임 유형 정보)의 조합이 포함됩니다.
RTTI가 활성화된 동적 캐스팅:
if(NewType* v = dynamic_cast<NewType*>(old)) { // old successfully casted to NewType // Perform NewType-specific operations (e.g., v->doSomething(); ) }
참고: 이 방법을 사용하려면 RTTI에 대한 컴파일러 지원이 필요합니다.
고려 사항 동적 캐스팅:
유형 열거 접근 방식:
switch(old->getType()) { case BOX: Box* box = static_cast<Box*>(old); // Perform Box-specific operations break; // Additional cases for other types }
장점:
단점:
위 내용은 `instanceof`를 사용하지 않고 C에서 객체 유형을 어떻게 결정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!