229.

Are the functions below a valid overload

public int Calc(ref int a,ref int b)

public int Calc(out int a, out int b)

An overload will occur if declarations of two methods differ only in their use of ref. However, it is not possible to define an overload that only differs by ref and out. For example, the following overload declarations are valid:
class MyClass 
{
    public void MyMethod(int i) {i = 10;}
    public void MyMethod(ref int i) {i = 10;}
}
but the following overload declarations are invalid:
class MyClass 
{
    public void MyMethod(out int i) {i = 10;}
    public void MyMethod(ref int i) {i = 10;}