Maison > Article > développement back-end > Quels sont quelques exemples pratiques d’utilisation d’expressions lambda C++ pour le filtrage et la transformation des données ?
En C++, les expressions lambda peuvent être utilisées pour filtrer et transformer facilement les données. Par exemple, vous pouvez utiliser des expressions lambda pour filtrer les éléments impairs dans un conteneur, transformer des éléments dans un conteneur, filtrer et transformer des conteneurs associatifs, utiliser des expressions lambda dans des algorithmes et transmettre des expressions lambda comme arguments de fonction. Ces méthodes peuvent rendre les tâches de traitement des données plus simples et plus efficaces.
Exemples pratiques d'utilisation d'expressions lambda C++ pour le filtrage et la transformation des données
Les expressions lambda sont très utiles en C++, en particulier lors du filtrage et de la transformation des données. Voici quelques exemples d'applications pratiques :
1. Filtrer les éléments dans un conteneur
std::vector<int> numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9}; // 使用 lambda 表达式过滤奇数 std::vector<int> odd_numbers = std::filter(numbers.begin(), numbers.end(), [](int n) { return n % 2 != 0; });
2 Transformer les éléments dans un conteneur
std::vector<double> squares = std::transform(numbers.begin(), numbers.end(), [](int n) { return n * n; });
3. expressions dans les algorithmes
std::map<int, std::string> name_age = { {1, "John"}, {2, "Mary"}, {3, "Bob"}, {4, "Alice"} }; // 过滤年龄大于 2 的人 auto filtered_name_age = std::map<int, std::string>(name_age.begin(), name_age.end(), [](const std::pair<int, std::string>& p) { return p.second.size() > 2; });
5. Passer des expressions lambda comme paramètres de fonction
std::sort(numbers.begin(), numbers.end(), [](int a, int b) { return a > b; }); // 从大到小排序
Ce ne sont là que quelques-unes des façons d'utiliser les expressions lambda pour le filtrage et la transformation des données en C++. En tirant parti des expressions lambda, vous pouvez écrire du code concis et puissant pour gérer diverses tâches de manipulation de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!