Question

I am using dynamic_cast<void*> in a memory manager template to obtain the real address of the object. However dynamic_cast is not allowed for types that are not polymorphic. Is there a more universal way or do I need two versions of the template?

Was it helpful?

Solution

You can use std::is_polymorphic to do a compile-time switch on the two possibilities.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top