Turning off C++ casting?

Paolo Bonzini paolo.bonzini@polimi.it
Thu Feb 20 10:05:00 GMT 2003


> But if I'm iterating over lots of
> objects, I'd like to get rid off the cost of dynamic_cast when I know
> for sure the objects will always be of this type.

assert and the pointer version of dynamic_cast are your friends if you don't 
want #ifdefs.

  assert (dynamic_cast<ExtendedObject*>(&baseObj) != NULL);
  ExtendedObject& obj = *reinterpret_cast<ExtendedObject*>(&baseObj);

> What I want to know is whether GCC allows you to optimize
> 'dynamic_cast'ing: gcc -fno_dynamic_cast ....  I don't think gcc has
> such a switch.

Maybe -fno-rtti (along with disabling much more)?

Paolo



More information about the Gcc mailing list