#include <iostream>
#include <vector>
#include <algorithm>
// 定义结构体
struct Point {
int x;
int y;
};
int main() {
std::vector<Point> points = { {10, 20}, {40, 30}, {60, 50} };
std::vector<Point> result;
// 使用std::transform的链式操作
std::transform(points.begin(), points.end(), std::back_inserter(result), [](const Point& p) {
Point newP = p;
newP.x += 10;
newP.y += 10;
return newP;
});
result.erase(std::remove_if(result.begin(), result.end(), [](const Point& p) {
return p.x <= 50;
}), result.end());
// 输出筛选后的vector内容
for (const auto& p : result) {
std::cout << "x: " << p.x << ", y: " << p.y << std::endl;
}
return 0;
}