Witam. Stworzyłem tablicę wielowymiarową i chciałbym żeby ustawić konkretny wiersz tablicy na wynik pewnej metody. Jak to zrobić w C#?
Takie coś nie działa:
tablica[y] = metoda();
Spodziewał się 2 indexów..
Metoda zwraca int[]
Witam. Stworzyłem tablicę wielowymiarową i chciałbym żeby ustawić konkretny wiersz tablicy na wynik pewnej metody. Jak to zrobić w C#?
Takie coś nie działa:
tablica[y] = metoda();
Spodziewał się 2 indexów..
Metoda zwraca int[]
skoro metoda zwraca int[],
to może spróbuj tablica = metoda()
class Zuo
{
int[] metoda(int n)
{
return new int[] { n, n * 69, n * 666 };
}
public Zuo()
{
int[][] zuo = new int[69][];
for (int i = 0; i < zuo.Length; ++i)
{
zuo[i] = metoda(i);
}
}
}
Aaa, przecież mogłem użyć postrzępionych :P A mi chodziło o wiersze tablicy zwykłej: int tab[,];
Ale dobra użyję tamtej. Dzięki za olśnienie.
tablica postrzępiona to tablica tablic. tablica dwuwymiarowa to jedna tablica, o dwóch indeksach. i pomijając cudowanie na wskaźnikach, nie można jej podzielić na wiersze inaczej niż przepisując w pętli kolejne elementy. więc jeśli chcesz zwracać „wiersz tablicy”, zrób to tablicą tablic.
A jeśli chce się zwracać zarówno wiersze, jak i kolumny takiej tablicy?
No, i trzeba sobie zadać pytanie, czy wydajność ma znaczenie w tym przypadku.
A jeśli chce się zwracać zarówno wiersze, jak i kolumny takiej tablicy?
no to się nie zwraca, tylko robi to inaczej. albo tworzy własny kontener, w którym będzie to możliwe.