C# pass by value/ref?
<p>Common question but  I could use an "english" explanation.. </p>

<p>Ist it like Java where</p>

<pre><code>Cat myCat
</code></pre>

<p>actually is a pointer to Cat? </p>

<p>Should I really create copy constructors in c#?</p>

<hr>

<p>I understand we are passing by value, but now my question is are we passing by pointer value or full copy of the object?</p>

<p>if its the latter, isnt that too expensive performance/memory wise? Is that when you have to use the ref keyword?</p>
