Ich versuche, einen Vektor als Argument an eine Funktion zu senden, und ich kann nicht herausfinden, wie es funktioniert. Versuchte eine Reihe von verschiedenen Möglichkeiten, aber alle geben unterschiedliche Fehlermeldungen. Ich füge nur einen Teil des Codes hinzu, da nur dieser Teil nicht funktioniert. (Der Vektor "zufällig" ist mit zufälligen, aber sortierten Werten zwischen 0 und 200 gefüllt.)
Der Code wurde aktualisiert:
#include <iostream>
#include <ctime>
#include <algorithm>
#include <vector>
using namespace std;
int binarySearch(int first, int last, int search4, vector<int>& random);
int main()
{
vector<int> random(100);
int search4, found;
int first = 0;
int last = 99;
found = binarySearch(first, last, search4, random);
system("pause");
return(0);
}
int binarySearch(int first, int last, int search4, vector<int>& random)
{
do
{
int mid = (first + last) / 2;
if (search4 > random[mid])
first = mid + 1;
else if (search4 < random[mid])
last = mid - 1;
else
return mid;
} while (first <= last);
return -(first + 1);
}