C++(typename) - 做梦当财神 - 博客园
1. 指定依赖于模板参数的类型
当你在模板中使用依赖于模板参数的类型时,C++ 编译器有时无法确定你是否指的是类型或变量。这是因为模板参数可能会依赖于传入的模板类型。在这种情况下,typename
可以明确指定你引用的是一个类型,而不是变量。
示例:
template <typename T>
class MyClass {
public:typename T::value_type var; // 告诉编译器 T::value_type 是一个类型
};