2010-01-09 7 views
2

Je voudrais utiliser la fonction lexicographical_compare dans la bibliothèque d'algorithmes en C++.C++ Que faire pour lexicographical_compare?

Mais je ne sais pas quoi écrire en ce qui concerne l'instruction using. Par exemple

using std::lexicographical_compare ?? 

Comment puis-je comprendre cela dans le futur?

Merci

+1

Pourquoi tant de points d'interrogation? –

Répondre

1

Qu'est-ce que vous avez est bien - vous aurez également besoin d'inclure l'en-tête de l'algorithme: Je recommande fortement

#include <algorithm> 

Quant à la façon de trouver ces choses pour vous-même, obtenir une copie de The C++ Standard Library.

2

Il suffit de faire

using std::lexicographical_compare; 

puis (copié à partir SGI STL Doc)

int main() 
{ 
    int A1[] = {3, 1, 4, 1, 5, 9, 3}; 
    int A2[] = {3, 1, 4, 2, 8, 5, 7}; 
    int A3[] = {1, 2, 3, 4}; 
    int A4[] = {1, 2, 3, 4, 5}; 

    const int N1 = sizeof(A1)/sizeof(int); 
    const int N2 = sizeof(A2)/sizeof(int); 
    const int N3 = sizeof(A3)/sizeof(int); 
    const int N4 = sizeof(A4)/sizeof(int); 

    bool C12 = lexicographical_compare(A1, A1 + N1, A2, A2 + N2); 
    bool C34 = lexicographical_compare(A3, A3 + N3, A4, A4 + N4); 

    cout << "A1[] < A2[]: " << (C12 ? "true" : "false") << endl; 
    cout << "A3[] < A4[]: " << (C34 ? "true" : "false") << endl; 
} 

Vous pouvez également

// no using statement 

int main() 
{ 
    //... same as above 
    bool C12 = std::lexicographical_compare(A1, A1 + N1, A2, A2 + N2); 
    bool C34 = std::lexicographical_compare(A3, A3 + N3, A4, A4 + N4); 
    //... same as above 
} 

Pour vous connaître à l'avenir, lire un livre C++ (par exemple Stroustrup de " Le langage de programmation C++ ") de la couverture à la couverture.

Questions connexes