再说C++模板类的一些使用技巧

本文介绍了C++中模板类的使用技巧,包括如何为模板类中的类型参数设置默认值,以及如何使用非类型参数来定义类成员变量的大小。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

已移到: http://www.iteblog.com/archives/184

C++允许为模板类中的类型参数指定为一个迷人类型,例如:我们可以将int赋予通用类Stack中的类型参数T,作为默认类型,如下所示:

template<class T = int>
class Stack{
//other operator
};
现在我们就可以像如下代码一样使用默认类型来声明模板类对象了:

Stack<> stack; //store int value
但是需要注意的是,默认类型只能用于模板类,不能用于模版函数。

在模版前缀中,除了类型参数外,还可以使用非类型参数,例如、在Stack类中,可以将数组容量声明为一个参数,如下所示;

template<class T, int capacity>
class Stack{
....
private:
    T elements[capacity];
    int size;
};

这样,当创建一个栈的时候,除了要指明元素类型外,还要指明数组的大小。如:

Stack<int, 100> stack;

此语句声明了一个最多可以容纳100个int数值的栈。

转载请注明: 转载自过往记忆(http://www.iteblog.com/)
本文链接地址: 再说C++模板类的一些使用技巧(http://www.iteblog.com/archives/184)


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值