title: Meaning of *& and **& in C++
body: <p>I found these symbols in a function declaration several times, but I don't know what they mean.</p>
  
  <p><strong>Example:</strong></p>
  
  <pre><code>void raccogli_dati(double **&amp; V, double **p, int N) { 
    int ultimo = 3; 
    V = new double * [N/2]; 
    for(int i=0; i &lt; N/2; i++) { 
      V[i] = new double[N/2], std :: clog &lt;&lt; "digita " &lt;&lt; N/2 - i
                   &lt;&lt; " valori per la parte superiore della matrice V: "; 
      for(int j=i; j &lt; N/2; j++) 
        std :: cin &gt;&gt; V[i][j], p[ultimo++][0] = (V[i][j] /= sqrt(p[i][0]*p[j][0]));
    } 
    for(int i=1; i &lt; N/2; i++) 
      for(int j=0; j &lt; i; j++) 
         V[i][j] = V[j][i];
  }
  </code></pre>