Sunday, December 28, 2014

Method Overloading



public static void Calculate(int a, double b)
        {
            Console.WriteLine("int,double");
        }
        public static void Calculate(double a, int b)
        {
            Console.WriteLine("double,int");
        }
static void Main(string[] args)
        {

            /// Error-The best overloaded method match for '.Calculate(double, int)' has some invalid arguments.
            /// Error-Argument 2: cannot convert from 'double' to 'float'
            ///Calculate(2.5, 2.5);/// Invalid



///Error-The call is ambiguous between the following methods or properties: 'Calculate(int, double)' and 'Calculate(double, int)'
            ///Calculate(2, 2);/// Invalid
            Calculate(2, 2.5);/// Valid
            Calculate(2, 2.5f);/// Valid
            Calculate(2.5, 2);/// Valid
            Calculate(2.5f, 2);/// Valid
}

Output 
int,double
int,double
double,int
double,int  

No comments:

Post a Comment