関数の引数としてベクトルを送信しようとしていますが、それを機能させる方法がわかりません。さまざまな方法を試しましたが、すべて異なるエラーメッセージが表示されます。動作しないのはこの部分だけなので、コードの一部だけを含めます。(ベクトル「ランダム」は、0から200までのランダムでソートされた値で埋められます)
コードを更新しました:
#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);
}