title: Does C# support call-by-result?
body: <p>I'm aware of 3 parameter evaluation types in C#:</p>
  
  <ol>
  <li>default, which is by-value</li>
  <li>ref, which is by-ref</li>
  <li>out, which is by-ref but considered initially uninitialized and mandatory to assign</li>
  </ol>
  
  <p>My professor stated that C# also supports by-result, which he explained as:</p>
  
  <blockquote>
    <ol>
    <li>Argument has to be LHS-compatible</li>
    <li>Create local copy of argument and operate on that</li>
    <li>After successful processing of method body, write value of copy back to the parameter source</li>
    </ol>
  </blockquote>
  
  <p>I don't see how this refers to any of the above types.</p>