发表时间:2022-03-25来源:网络
今天小编分享 C++ 模板和STL入门 ,建议大家收藏慢慢学习,同时希望对大家的C++学习有所帮助。

模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。
模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。
每个容器都有一个单一的定义,比如 向量,我们可以定义许多不同类型的向量,比如 vector 或 vector 。
您可以使用模板来定义函数和类,接下来让我们一起来看看如何使用。
函数模板
模板函数定义的一般形式如下所示:
template ret - type func - name ( parameter list ) { // 函数的主体 }
在这里,type 是函数所使用的数据类型的占位符名称。这个名称可以在函数定义中使用。
下面是函数模板的实例,返回两个数中的最大值:
实例
#include#includeusing namespace std;
templateinline T const & Max ( T const & a,T const & b) {
return a
private:
vectorelems;
// 元素
public:
void push(T const&);
// 入栈
void pop();
// 出栈
T top() const;
// 返回栈顶元素
bool empty() const{
// 如果为空则返回真。
return elems.empty();
} };
template void Stack::push (T const& elem) {
// 追加传入元素的副本
elems.push_back(elem);
}
template void Stack::pop () {
if (elems.empty()) {
throw out_of_range("Stack::pop(): empty stack");
}
// 删除最后一个元素
elems.pop_back();
} template T Stack::top () const {
if (elems.empty()) {
throw out_of_range("Stack::top(): empty stack");
}
// 返回最后一个元素的副本
return elems.back();
} int main() {
try {
Stack int
Stack; // int 类型的栈
Stack string Stack;
// string 类型的栈
// 操作 int 类型的栈
int Stack.push(7);
cout
// 创建一个向量存储 int
vector vec;
int i;
// 显示 vec 的原始大小
cout
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务
2022-03-26
2022-02-15
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26
2022-03-26