Właściwie robię listę jako parametr odniesienia następująco:Najlepsza praktyka: parametr referencyjny lub wartość zwracana?
public static List ListMethod(List result)
Widziałem niektórzy ludzie robią w ten sposób zbyt:
public static void ListMethod(ref List result)
Jeśli się nie mylę, „moja” metoda również przyjmuje parametr list
jako parametr referencyjny i powinieneś być w stanie go używać w taki sam sposób, jak w jego metodzie "inny".
Ale wydaje mi się bardziej "czysty", że wprowadzasz parametr, robisz coś z nim i zwracasz go w metodach zwracających wartość.
Jakieś dobre argumenty za lub przeciw jednej lub drugiej metodzie?
To jest lista? po co wysyłasz przez referencję to, co próbujesz osiągnąć? –
Bez przekazywania jako ref/out, wewnętrznie odwołanie wskazujące na kopie sterty jest wykonane w stosie i jest przekazywane do metody wywoływanej. Jeśli użyto ref, to samo odniesienie jest używane jako przekazywany argument. – Zenwalker
Dlaczego uważasz, że powinieneś zwrócić 'List' w swojej pierwszej metodzie i nie zwracać niczego w drugiej? – BoltClock