요즘 C++의 virtual 메카니즘에 빠져서 산다. virtual.. 그리 오랜시간 보아왔는데도, 여전히 어렵다.. 다음은 오늘 알아낸 것들.

1. RTTI(Run-Time Type Identification), 실행 중에 기반(base) 클래스 타입 포인터의 실체를 밝혀내는데 쓰이는 typeid 연산자. 그 기반 타입의 포인터가 다형성을 지닌 클래스(polymophic class), 즉 "virtual 함수가 있는 클래스"가 아니면 아무짝에도 쓸모가 없다. "typeid(기반 타입의 포인터)" 해보았자, 보이는 그대로 그 기반 타입임만을 알려줄 뿐, 실제 담겨있는 타입, 즉 그 기반 타입의 포인터로부터 파생된 타입(derived type)에 대해서는 알려주는 바가 없다.

more..

2005/01/25 18:23 2005/01/25 18:23
TAG , ,

트랙백 주소 :: http://anyflow.net/trackback/30

댓글을 달아 주세요

MFC를 쓰며 언제나 "저게 뭐야?"하고 지나쳐왔던 RUNTIME_CLASS, DECLARE_DYNAMIC등의 매크로. 어디에, 왜, 언제쓰는지도 모른 채 그냥 지나쳐왔던 그 내용들..이것들이 실행 시 인스턴스의 실제 타입을 알아내는 데 이용하는 MFC의 메카니즘이라는 것을 이제야 알게되었다. 그것도 MFC가 아니라, C++을 다시 보면서.

more..

2004/11/02 02:56 2004/11/02 02:56

트랙백 주소 :: http://anyflow.net/trackback/29

댓글을 달아 주세요