C++ sending array to function by value, not by reference
<p>I have a problem with C++.</p>

<p>I have a function which sorts the array, but I don't want to work on an original array. I want to send the array to the function by value not by reference. Please help me. </p>

<pre><code>int bogoSort(int tab[], int n){
int iloscOperacjiDominujacych = 0;
    cout&lt;&lt;"rozpoczalem algorytm BogoSort"&lt;&lt;endl;

    srand (time(NULL));
    named (outer)
    while(true){
 //       cout&lt;&lt;"Zaczal sie while"&lt;&lt;endl;
        named (inner)
        for(int i = 0; i &lt; n; i++){
            if(i == n-1){
                break (outer);
            }
            if (tab[i] &gt; tab[i+1]){
                break (inner);
            }
        }
        for(int i = n-1; i &gt; 0; i--){
            iloscOperacjiDominujacych++;
            //operacja dominujaca to zamiana dwoch elementow w tablicy, wykonuje sie ZAWSZE najwiecej razy i jest najbardziej zlozona
            int swapPostition =  rand() % (i+1); //wylosowanie liczby miedzy &lt;0;i&gt; nalezacej do calkowitych
            int temp = tab[i];
            tab[i] = tab[swapPostition];
            tab[swapPostition] = temp;
        }
    }
//    cout&lt;&lt;"Wykonal sie while"&lt;&lt;endl;
    show(tab,n);
    return iloscOperacjiDominujacych;
}
</code></pre>
