ProgaOra/20231025/orai.txt

49 lines
1.6 KiB
Plaintext
Raw Normal View History

2024-01-19 14:06:27 +00:00
public static típus függénynév(this típus név, tov.paraméterek){
függvénytörzs;
};
Az így defininált függvény
public static class Intkiterjesztesek
{
public static int Factorial(this int szam)
{
if (szam < 0) {
throw new ArgumentException("A negatív számoknak nincs faktoriálisa");
}
if (szam == 0 || szam == 1)
{
return 1;
}
int result = 1;
for (int i = 2; i <= szam; ++i) {
result *= i;
}
return result;
}
}
class Program
{
static void Main(string[] args)
{
int szam = 5;
int factorial = szam.Factorial();
Console.WriteLine($"{szam}! = {factorial}");
}
}
A this kulcsszó használatával a függvénykiterjesztésekben az objektum, amelyre alkalmazni szeretnénk a kiterjesztett metódust, paraméterként jut át a metódusnak.
Ez a példa egy egyszerű függvénykiterjesztés az int típushoz, amely a szám faktoriálisát számítja ki.
A throw kulcsszót a hiba vagy kivétel dobása céljából használhatunk.
Amikor egy kivételt dobunk akkor valamilyen előre definiált kivételosztály egy példányát kaphatjuk vissza, vagy saját magunk által definiált kivételosztály.
A throw tehát lehetővé teszi számunkra, hogy megállítsuk a program futását és jelezzük, hogy valamilyen probléma vagy kivlételes helyzet áll fennm amely kezelést igényel.