原题题目
#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+n,Inc);
for(int i = 0;i < n; ++i)
cout << a[i] << ",";
cout << endl;
}
return 0;
}
代码实现
template <class T1,class T2>
void MyForeach(T1* startptr,T1* endptr,T2* tempprint)
{
T1* temp;
for(temp = startptr;temp != endptr;temp++)
(*tempprint)(*temp);
return;
}