title: Method overloading return values
body: <p>In C# I need to be able to define a method but have it return one or two return types. The compiler gives me an error when I try to do it, but why isn't it smart enough to know which method I need to call?</p>
  
  <pre><code>int x = FunctionReturnsIntOrString();
  </code></pre>
  
  <p>Why would the compiler prevent me from having two functions with different return types?</p>