学了模板再来看容器输出的简化

以前提到了在学习C++标准库的过程中《关于容器输出的学习与简化过程 》,当时没有学习一点模版的东西,所以怎么弄都还是比较复杂,学到模版的第一件事,我就是想用它来简化容器的输出,当然,实现后,我也体会到了模版的强大和泛型编程方式的优点(这样说似乎是太大了,不过可以管中窥豹嘛),下面看一个用模版实现的容器输出:

template <class T>
void printCon(const T &orig)
{
for(T::const_iterator it = orig.begin();it != orig.end();++it)
cout<<*it<<" ";
cout<<endl;
}

简单几行,就可以输出一切容器。。。。而且还包括你自己实现的带类似成员的自定义类,其功能强大,不言而喻!难怪在看到C++的模版技术后,JAVA也引进了这一强大技术(似乎是在JDK1.5以后)。这样就太短了,可是也没有什么其它好说的了。看看使用吧。

#include<iostream>
#include<vector>
#include<string>
using namespace std;
int main()
{
vector<string> svec;
svec.push_back("ABC");
svec.push_back("BCD");
printCon(svec);
vector<int> ivec;
ivec.push_back(100);
ivec.push_back(10);
printCon(ivec);
}

一经定义,反复使用:)简直就是一劳永逸嘛。。。。虽然话是说C能实现C++的一切功能,但是。。。。要实现这样的容器输出该需要多少行代码啊。。。。。(#·¥%#……#¥……,C中根本就没有这样的容器,不需要实现这样的输出.......................晕)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值