Лабораторный практикум по информатике



бет57/83
Дата06.01.2022
өлшемі1,1 Mb.
#15674
түріПрактикум
1   ...   53   54   55   56   57   58   59   60   ...   83

Перегрузка методов


Язык C# позволяет создавать несколько методов с одинаковыми име- нами, но разными параметрами. Компилятор автоматически подберет наиболее подходящий метод при построении программы. Например, мож- но написать два отдельных метода возведения числа в степень: для целых чисел будет применяться один алгоритм, а для вещественных – другой:

///

/// Вычисление X в степени Y для целых чисел

///

private int Pow(int X, int Y)

{

int b = 1; while (Y != 0)



if (Y % 2 == 0)

{

Y /= 2; X *= X;



}

else


{

Y‐‐;


b *= X;

}

return b;



}

///

/// Вычисление X в степени Y для вещественных чисел

///

private double Pow(double X, double Y)

{

if (X != 0)



return Math.Exp(Y * Math.Log(Math.Abs(X))); else if (Y == 0)

return 1; else

return 0;

}

Вызывается такой код одинаково, разница лишь в параметрах – в первом случае компилятор вызовет метод Pow с целочисленными па- раметрами, а во втором – с вещественными:



Pow(3, 17);

Pow(3.0, 17.0);




    1. Достарыңызбен бөлісу:
1   ...   53   54   55   56   57   58   59   60   ...   83




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет