C++模板元编程(18)typename的其他用法

21 篇文章 3 订阅 ¥29.90 ¥99.00
C++中的typename关键字不仅在模板定义时与class等价,还可用于标识嵌套依赖类型,解决编译器在面对T::LengthType这样的表达式时无法确定是类型还是成员的困扰。在涉及函数返回类型或参数的嵌套依赖类型时,typename也是必不可少的修饰词。
摘要由CSDN通过智能技术生成

在c++ Template中很多地方都用到了typename与class这两个关键字,而且好像可以替换,是不是这两个关键字完全一样呢?

相信学习C++的人对class这个关键字都非常明白,class用于定义类,在模板引入c++后,最初定义模板的方法为:`

template <class T>
……

在这里class关键字表明T是一个类型,后来为了避免class在这两个地方的使用可能给人带来混淆,所以引入了typename这个关键字,它的作用同class一样表明后面的符号为一个类型,这样在定义模板的时候就可以使用下面的方式了:

template <typename 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值