목록dynamic_cast (1)
nakka soft world !
RTTI ( Rut Time Type Information ) , dynamic_cast
RTTI ( Rut Time Type Information ) #include void foo(Animal* p){// p가 실제로 어떤 객체를 가리킬까?// RTTIconst type_info& t1 = typeid(*p);const type_info& t2 = typeid(Dog); if (t1 == t2) {} if(typeid(*p) == typeid(Dog)){// p를 Dog타입으로 캐스팅 해서 사용Dog* pDog = static_cast(p);// pDog->Dog고유 멤버 = 10;}} int main(){Animal a;foo(&a); Dog d;foo(&d);} RTTI는 사용하지 않는 것이 좋은 디자인이다. dynamic_cast class Animal{public:int age;v..
프로그래밍언어/C++
2017. 3. 27. 19:12