【发布时间】:2013-12-22 22:29:11
【问题描述】:
我知道它们会编码有关您实例化它们的类型的信息,但是它们是如何工作的?例如,类型特征std::is_class。它是如何工作的?所有的实现看起来都是空的结构,我得承认我摸不着头脑。
这些名称似乎足够具有描述性,所以我可以理解它们的含义,但是使用类型特征的典型场景是什么?
我找不到关于该主题的介绍性资源(或关于 SO 的问题)。指针将不胜感激。
【问题讨论】:
-
它们可以由编译器实现(即使它们看起来像常规的类模板定义)。但是,我认为 Alexandrescu 的“现代 C++ 设计”中描述了
is_class的可能实现
标签: c++ templates metaprogramming typetraits