“转换特性”(transform trait)用于指定一个与某个类型相似但具有某些额外(或移除)特性的类型。在以下示例中,无论 T 被特化为 int 还是 int&,变量 m_iMember 都将是一个 int 类型的成员变量:
template<typename T>
class CRClass {
std::remove_reference<T>::type m_iMember;
};
这里,std::remove_reference<T>::type 作用是去除 T 的引用属性,使 m_iMember 统一为 int 类型,即使 T 是 int&。
最后修改: 2025年01月30日 星期四 13:03