就因为很习惯性的写for each
, for in
就想看看c艹有没有类似的 嗯还真有这个templatesfor_each
它的作用就是一个迭代器 随便拿今天写的当例子来说明
#include <bits/stdc++.h>
using namespace std;
void myfunc(string str){
cout << str << "\n";
}
int main(){
int T;
cin >> T;
vector<string> user_names(T);
vector<string> emails(T);
for(int i=0; i<T; i++){
cin >> user_names[i] >> emails[i];
}
vector<string> gmail_users;
for(int i=0; i<T; i++){
if(regex_match(emails[i], regex("(.*)@gmail.com"))){
gmail_users.push_back(user_names[i]);
}
}
sort(gmail_users.begin(), gmail_users.end());
for_each(gmail_users.begin(), gmail_users.end(), myfunc);
}
从gmail_users
这个vector的头开始到结束进行遍历,对里面的每个元素进行myfunc
的操作,在这边我的操作是按行打印 嗯就很好懂啦 但是就是要记住是for_each
不要和其他的弄混了(日常弄混 就这样