webForumDet fria alternativet

vad gör "c# params"?

.NET

2 svar · 454 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

Jag hajjar inte! :OO
Vad gör params och vad blir skillnaden på dessa:

public foo(params int[] bar)
{
     foreach (int i in bar)
     ...

public foo(int[] bar)
{
     foreach (int i in bar)
     ...
Medlem sedan maj 20012 812 inlägg
#2

Fördelen med params blir när du anropar metoden, du behöver inte skicka in en array, utan kan skicka in parameterna direkt typ så här:

foo(2,3,4,5);
foo(2,3);
foo(2,3,4);

istället för så här

foo(new int[]{2,3,4,5});
foo(new int[]{2,3});
foo(new int[]{2,3,4});

Mindre kod att skriva helt enkelt...

- M

Medlem sedan juni 20003 076 inlägg
#3

Ahaa, det är på det viset!
Och det är alltså därför endast metodens sista parameter kan använda params då den kan vara kommaseparerad.
Tack Gladh! :)

271 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
147 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)