Added everything from Kalmar
This commit is contained in:
48
20231025/orai.txt
Normal file
48
20231025/orai.txt
Normal file
@@ -0,0 +1,48 @@
|
||||
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.
|
||||
Reference in New Issue
Block a user