Moyen plus élégant de vérifier les doublons dans le tableau C ++?

J'ai écrit ce code en C++ dans le cadre d'un uni tâche où j'en ai besoin pour s'assurer qu'il n'y a pas de doublons dans un tableau:

//Check for duplicate numbers in user inputted data
    int i; //Need to declare i here so that it can be accessed by the 'inner' loop that starts on line 21
    for(i = 0;i < 6; i++) { //Check each other number in the array
        for(int j = i; j < 6; j++) { //Check the rest of the numbers
            if(j != i) { //Makes sure don't check number against itself
                if(userNumbers[i] == userNumbers[j]) {
                    b = true;
                }
            }
            if(b == true) { //If there is a duplicate, change that particular number
                cout << "Please re-enter number " << i + 1 << ". Duplicate numbers are not allowed:" << endl;
                cin >> userNumbers[i];
            }
        } //Comparison loop
        b = false; //Reset the boolean after each number entered has been checked
    } //Main check loop

Il fonctionne parfaitement, mais j'aimerais savoir si il y a plus d'élégance ou de moyen efficace pour vérifier.

source d'informationauteur Saladin Akara