title: C# call by reference "return value" is dispensable?
body: <p>im confronted with some code and i wondered if there is a need for the return value in this method.
  the method changes some values of an two-dimensonal double array.</p>
  
  <pre><code>public double[,] startsimplex_werte(double[,]f)
  {
      double standardabstand_s = 1.0;
  
      double[] vektor_e1 = newdouble[2]{1.0,0.0};
      double[] vektor_e2 = newdouble[2]{0.0,1.0};
      f[1,1]=f[0,1]+vektor_e1[0]*standardabstand_s;
      f[1,2]=f[0,2];
      f[2,1]=f[0,1];
      f[2,2]=f[0,2]+vektor_e2[1]*standardabstand_s;
  
      return f;
  }
  </code></pre>
  
  <p>theres an 2 dimensional array called:</p>
  
  <pre><code>double[,]f = new double[3,3];
  </code></pre>
  
  <p>so then the method is used on the array:</p>
  
  <pre><code>f = berechne.startsimplex_werte(f);
  </code></pre>
  
  <p>its not important what the method does in detial. my question is:</p>
  
  <p>is it necessary to return the values of the array by writing "return f " in the method.
  since arrays are reference types, there is a call by reference. so the method already changes the actual data members of the array. i would have written the same method with no return value (void method) and just call the method without assigning it to the array. imo its just important to transfer the array via parameter. both variantes would do the same, or am I wrong? </p>
  
  <p>I hope somebody can tell me if my suggestion is true.</p>