c# nie rozumiem działania kodu - jak ktoś ma chwilkę to zapraszam :)

0

Hej, może mi ktoś wytłumaczyć o co tu biega ??
screenshot-20220117175353.png

Moge wywołać foreach na tej metodzie ( czyli musi zwracać tablicę stringów) a kiedy chce po prostu przypisać wynik tej metody do zmiennej tablicowej to już nie jestem w stanie tego zrobić. Nie rozumiem również wytłumaczenia kompilatora.

3

a wystarczy zobaczyć w helpie albo nawet w podpowiedzi w VS (ba nawet przeczytać treść błędu) co ona zwraca i wszystko stanie się jasne
https://docs.microsoft.com/pl-pl/dotnet/api/system.io.file.readlines?view=net-6.0

0

@abrakadaber: Nie jestem, aż tak biegły z interfejsów.. Czy mógłbyś wytłumaczyć mi jak działa zwracanie interfejsów ?
Wiem, że interfejs wyznacza jakie składowe powinna mieć klasa i służy do wywołań polimorficznych. Ale zwracanie interfejsu jako typ danych to pierwszy raz sie z czymś takim spotykam..

4

"Zwracanie interfejsów" działa tak że typem zwracanym jest interfejs a nie żaden konkretny typ, żadnej magii tu nie ma.

W twoim przypadku typ zmiennej to "IEnumerable<String>", czyli linijka powinna wyglądać

IEnumerable<String> lines = File.ReadLines("ścieżka");
0

@KamilAdam: Jasne a "<string>" co oznacza bo to chyba nie jest to samo co jawna konwersja

3
Kuba Czarnecki napisał(a):

@KamilAdam: Jasne a "<string>" co oznacza

Typ generyczny

W tym knkretnym przypadku oznacza to że IEnumerable zawiera elementy typu String

1 użytkowników online, w tym zalogowanych: 0, gości: 1