наследование — есть ли способ узнать, был ли класс унаследован в Stack Overflow

В C ++, есть ли способ / процедура, чтобы узнать, был ли определенный класс унаследован другим классом?

Возможно ли это в C ++

-2

Решение

Например, допустим, у вас есть следующие два класса:

class A {};

class B : public A {};

Если вы спросите, есть ли способ узнать, A были унаследованы тогда нет такого пути нет.

Если вы спросите, есть ли способ узнать, B наследуется от другого класса (независимо от того, какой это класс), то нет, нет.

Самое близкое, что вы можете получить, вероятно, std::is_polymorphic, который сообщает (время компиляции), если у класса есть виртуальные функции, которые Можно наследоваться, или если у класса есть виртуальные функции, которые он унаследовал. Не существует функциональности, времени компиляции или времени выполнения, чтобы определить, унаследован ли класс или каковы базовые классы какого-либо класса.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]