C++ 模板函数 001:简单的SumArray 002 简单的foreach 003 简单的Filter 006 这个模板并不难

这篇博客详细介绍了C++模板函数的使用,包括SumArray实现数组求和,MyForeach实现类似foreach的功能,Filter模板用于筛选列表元素,以及在不同场景下的模板应用。通过实例和代码解析,展示了模板的灵活性和实用性。
摘要由CSDN通过智能技术生成

001:简单的SumArray

描述
填写模板 PrintArray,使得程序输出结果是: TomJackMaryJohn 10 不得编写SumArray函数

#include <iostream>
#include <string>
using namespace std;
template <class T>
T SumArray(
// 在此处补充你的代码
}
int main() {
   
	string array[4] = {
    "Tom","Jack","Mary","John"};
	cout << SumArray(array,array+4) << endl;
	int a[4] = {
    1, 2, 3, 4};  //提示:1+2+3+4 = 10
	cout << SumArray(a,a+4) << endl;
	return 0;
}

输入

输出

TomJackMaryJohn
10

函数的功能
将给定数组的每个元素相加,返回相加的值,类型为模板类型

T SumArray(            //模板函数 
// 在此处补充你的代码
T* s, T* e
){
   
T a;
int i=0;
while(s!=e){
          //全部加起来 
	a+=*s++;
}
return a;
//

002:简单的foreach

描述
编写MyForeach模板,使程序按要求输出 不得编写 MyForeach函数

#include <iostream>
#include <string>
using namespace std;
// 在此处补充你的代码
void Print(string s)
{
   
	cout << s;
}
void Inc(int & n)
{
   
	++ n;
}
string array[100];
int a[100];
int main() {
   
	int m,n;
	while(cin >> m >> n) {
   
		for(int i = 0;i < m; ++i)
			cin >> array[i];
		for(int j = 0; j < n; ++j)
			cin >> a[j];
		MyForeach(array,array+m,Print);		 
		cout << endl;
		MyForeach(a,a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值