首页 > 后端开发 > C++ > C 模板中'typename”关键字的用途是什么?

C 模板中'typename”关键字的用途是什么?

DDD
发布: 2024-12-11 14:31:11
原创
811 人浏览过

What is the Purpose of the `typename` Keyword in C   Templates?

C 中 typename 的用途是什么?

使用模板时,可能会遇到来自 C 编译器的令人困惑的错误消息,海湾合作委员会。特别是,正确的声明可能会导致奇怪的编译错误,当应用 typename 关键字时,这些错误就会消失。要弄清楚这个问题,了解 typename 的作用至关重要。

根据 Nicolai M. Josuttis 的《The C Standard Library》,typename 指定后续标识符是类型。考虑以下示例:

template <class T>
Class MyClass
{
  typename T::SubType * ptr;
  ...
};
登录后复制

在此示例中,typename 阐明 SubType 是类 T 的类型。因此,ptr 是指向类型 T::SubType 的指针。如果没有 typename,SubType 将被解释为静态成员,使 T::SubType * ptr 成为 T 类型的 SubType 值与 ptr 的乘积。

以上是C 模板中'typename”关键字的用途是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板