问题
By an abstract class I mean the class with at least one pure virtual method. I want the compilation to fail, if the check shows that the class is not abstract.
Is it even possible?
回答1:
Use std::is_abstract.
#include <type_traits>
static_assert(std::is_abstract<T>(), "T ought to be abstract.");
See it in action.
来源:https://stackoverflow.com/questions/21369036/how-to-check-if-the-class-is-abstract-at-compile-time