Maison >développement back-end >C++ >Quels sont les objets fonctions STL couramment utilisés dans la bibliothèque standard C++ ?

Quels sont les objets fonctions STL couramment utilisés dans la bibliothèque standard C++ ?

王林
王林original
2024-04-25 13:06:02464parcourir

C++ STL fournit une variété d'objets fonction qui peuvent être utilisés pour comparer, trier et faire fonctionner des éléments. Les objets de fonction courants incluent lesss pour le tri ascendant, Greater pour le tri décroissant, equal_to pour comparer l'égalité, et bind2nd et mem_fn pour lier les paramètres de fonction. En pratique, vous pouvez trier un tableau par ordre décroissant en utilisant l'objet fonction supérieur, comme suit : En utilisant la fonction sort(), l'objet fonction supérieur triera les éléments de la plage spécifiée par ordre décroissant.

C++ 标准库中有哪些常用的 STL 函数对象?

Objets de fonction STL couramment utilisés dans la bibliothèque standard C++

Les objets de fonction, à savoir Functor, sont des objets qui peuvent être appelés et renvoyer des résultats. La bibliothèque standard C++ fournit de nombreux objets fonctions STL utiles qui peuvent être utilisés pour une variété d'algorithmes et d'opérations.

Voici quelques objets fonction couramment utilisés en C++ STL :

  • less : Fonction de comparaison utilisée pour trier les éléments (ordre croissant).
  • plus grand : Fonction de comparaison utilisée pour trier les éléments (ordre décroissant).
  • equal_to : fonction de comparaison égale, utilisée pour vérifier si deux éléments sont égaux.
  • not_equal_to : Fonction de comparaison non égale, utilisée pour vérifier si deux éléments ne sont pas égaux.
  • greater_equal : Fonction de comparaison supérieure ou égale à, utilisée pour vérifier si un élément est supérieur ou égal à un autre élément.
  • less_equal : Fonction de comparaison inférieure ou égale à, utilisée pour vérifier si un élément est inférieur ou égal à un autre élément.
  • bind2nd : Lie un paramètre de l'objet fonction et renvoie l'objet fonction lié.
  • mem_fn : Créez un objet fonction qui crée un objet fonction à partir d'un pointeur de fonction membre.

Cas pratique :

Utilisez greater objet fonction pour trier un tableau d'entiers par ordre décroissant :

#include <algorithm>
#include <vector>

using namespace std;

int main() {
  vector<int> myVector = {1, 3, 5, 2, 4};

  // 使用 greater 函数对象对 myVector 中的元素进行降序排序
  sort(myVector.begin(), myVector.end(), greater<int>());

  // 输出排序后的数组
  for (auto it = myVector.begin(); it != myVector.end(); ++it) {
    cout << *it << " ";
  }
  cout << endl;

  return 0;
}

Sortie :

5 4 3 2 1

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn