Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    129

    [C++] Ricerca di indice già estratto con find()

    salve a tutti

    ho creato un metodo che estrarre un indice
    il metodo non deve ritornare finche non estrae un indice diverso tra quelli estratti

    allora ho utilizzato la funzione find per cercare se l'indice è stato già estratto, quindi se è contenuto all'interno del vector indici estratti

    codice:
    int  estrai(vector <int> &valori,vector <int> &indici_estratti)
    {
         int num;
            while(1){
            short indice=rand()%N; //estraggo un indice
    
            if((std::find(indici_estratti.begin(), indici_estratti.end(),indice))==indici_estratti.end()){
               indici_estratti.push_back(indice);
               num = valori[indice];
               return num;}
    
    
    
            }


    il problema è che su find ho questo errore e non capisco perchè
    error: no matching function for call to 'find(std::vector<int>::iterator, std::vector<int>::iterator, short int&)'

    qualcuno mi può aiutare
    grazie
    Ultima modifica di namelessg; 11-09-2014 a 13:58

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Stai chiamando la funzione passandogli 3 argomenti: 2 vettori e un intero; ma la tua funzione vuole solo due argomenti (due vettori)... ma il codice relativo alla chiamata non l'hai postato.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    129
    Quote Originariamente inviata da LeleFT Visualizza il messaggio
    Stai chiamando la funzione passandogli 3 argomenti: 2 vettori e un intero; ma la tua funzione vuole solo due argomenti (due vettori)... ma il codice relativo alla chiamata non l'hai postato.


    Ciao.
    chiamata al metodo
    num= estrai(valori,indici_estratti);

    find ho visto che si poteva usare cosi ..
    l'errore me lo porta su find

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    129
    #include <algorithm>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.