typename主要作用是告诉complier一个“变量”是一个新的“类型”。
比如:
错误的代码:
template <typename T>void foo(const T& t){ // 声明一个指向某个类型为T::bar的对象的指针 T::bar * p;}
正确的代码:
template <typename T>void foo(const T& t){ // 声明一个指向某个类型为T::bar的对象的指针 typename T::bar * p;}typename主要作用是告诉complier一个“变量”是一个新的“类型”。
比如:
错误的代码:
template <typename T>void foo(const T& t){ // 声明一个指向某个类型为T::bar的对象的指针 T::bar * p;}
正确的代码:
template <typename T>void foo(const T& t){ // 声明一个指向某个类型为T::bar的对象的指针 typename T::bar * p;}版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。