Anfängerfrage: Vektoren als Input einer Funktion



  • Hallo, ich habe das vermutlich lächerliche Problem, dass ich einen Vektor an eine Funktion übergeben möchte. Falls möglich möchte ich von der Funktion eine int-Zahl zurück erhalten. Ich möchte lediglich die kleinste Zahl im Vektor cc finden.

    Im main.cpp

    #include <ctime>      // time()
    #include "eingabe.h"
    #include "geheimZahl.h"
    #include "min.h"
    const vector<int> cc =...
    int m= minimum(cc());
    

    min.h

    int minimum( const vector<int>&cd());
    

    min.cpp

    #include <iostream>
    #include "min.h"
    #include <vector>
    #include "geheimZahl.h"
     int minimum(const vector<int> &cd())
    for (x=1; x<cc.size; ++x)
    {
        save=cd(0)
        if (save>cd(x))
        {
            save=cd(x);
        }
        else
        {
    
        }
        return;
    }
    

    Ich erhalte no match for call to '(const std::vector<int>) ()'| und nehme an es bezieht sich darauf, dass ich meinen Vektor falsch übergebe, mir fehlt allerdings noch der Blick dafür.
    Danke



  • Hi,

    const vector<int>&cd()
    

    Was sollen die Klammern da am Ende?

    cd(0)
    

    [] für Elementzugriff

    return;
    

    Return was?



  • Danke, ich konnte die ersten beiden Kommentare verstehen. Als return habe ich vergessen "save" zu schreiben.
    Jedoch finde ich nicht explizit, wie der Funktionsaufruf idR aussehen soll. Ich bekomme für meine Zeile noch denselben Fehler.

    int m= minimum(cc());
    

    Was bedeutet "no match for call"?
    Danke



  • cc()
    

    Was sollen die Klammern da?

    Was bedeutet "no match for call"?

    Es gibt keine Funktion mit diesem Namen und diesem Aufrufparameter.


Log in to reply