Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article explique comment utiliser la set::find
fonction STL (Standard Template Library) dans Visual C++.
Version du produit d’origine : Visual C++
Numéro de base de connaissances d’origine : 158576
En-tête requis
<set>
Prototype
template<class _K, class _Pr, class _A>
class set
{
public:
// Function 1:
const_iterator find(const _K& _Kv) const;
}
Note
Les noms de classe/paramètre dans le prototype peuvent ne pas correspondre à la version dans le fichier d’en-tête. Certains ont été modifiés pour améliorer la lisibilité.
Description de la fonction set ::find
La find
fonction est utilisée pour localiser un élément dans une séquence contrôlée. Elle retourne un itérateur au premier élément de la séquence contrôlée dont la clé de tri correspond à son paramètre. Si aucun élément de ce type n’existe, l’itérateur retourné est égal end()
à .
Exemple de code
Note
Dans Visual C++ .NET et dans Visual C++, /EHsc est défini par défaut et équivaut à /GX.
//////////////////////////////////////////////////////////////////////
// Compile options needed: -GX
// SetFind.cpp:
// Illustrates how to use the find function to get an iterator
// that points to the first element in the controlled sequence
// that has a particular sort key.
// Functions:
// find Returns an iterator that points to the first element
// in the controlled sequence that has the same sort key
// as the value passed to the find function. If no such
// element exists, the iterator equals end().
// Copyright (c) 1996 Microsoft Corporation. All rights reserved.
//////////////////////////////////////////////////////////////////////
#pragma warning(disable:4786)
#include <set>
#include <iostream>
#if _MSC_VER > 1020 // if VC++ version is > 4.2
using namespace std; // std c++ libs implemented in std
#endif
typedef set<int,less<int>,allocator<int> > SET_INT;
void truefalse(int x)
{
cout << (x?"True":"False") << endl;
}
void main()
{
SET_INT s1;
cout << "s1.insert(5)" << endl;
s1.insert(5);
cout << "s1.insert(8)" << endl;
s1.insert(8);
cout << "s1.insert(12)" << endl;
s1.insert(12);
SET_INT::iterator it;
cout << "it=find(8)" << endl;
it=s1.find(8);
cout << "it!=s1.end() returned ";
truefalse(it!=s1.end()); // True
cout << "it=find(6)" << endl;
it=s1.find(6);
cout << "it!=s1.end() returned ";
truefalse(it!=s1.end()); // False
}
Sortie du programme
s1.insert(5)
s1.insert(8)
s1.insert(12)
it=find(8)
it!=s1.end() returned True
it=find(6)
it!=s1.end() returned False