Kategoria: C# Dodane przez marcin90

Słowa kluczowe ref oraz out - podaj różnice w działaniu.

1 odpowiedź

2 0 Dodane 10-06-2018 przez marcin90

Słowa kluczowe - ref oraz out używane są do przekazywania parametrów do funkcji.
W obu przypadkach parametry przekazywane są jako referencje (adres) a nie wartości.

ref vs. out - różnice

  • w przypadku ref zmienna musi być zainicjalizowana przed przekazaniem jej jako parametr
  • w przypadku out nie jest wymagane by zmienna była zainicjalizowana przed przekazaniem jako parametr
  • ref - przypisanie wartości do zmiennej w funkcji nie jest wymagane przed powrotem do funkcji wywołującej
  • out - w metodzie wywołanejmusi być zainicjalizowana wartość przekazanej zmiennej przed powrotem do funkcji wywołującej

Mówiąc prościej:

  • ref oznacza, że przekazany parametr ma już przypisaną wartość, która może być odczytana bądź zmieniona w wywołanej funkcji
  • out oznacza, że przekazany parametr nie posiada przypisanej wartości i musi być ona nadana w wywołanej funkcji

Out często jest używane w przypadku, gdy chcemy żeby funkcja zwracała więcej niż jeden parametr (out jako input nie przyjmuje żadnej wartości).


Dodaj swoją wersję odpowiedzi

Dodajesz odpowiedź jako gość. Zaloguj się się by uzyskać dostęp do rankingu oraz powiadomień.