Hirdetés
- Bemutatkozott a Poco X7 és X7 Pro
- Honor Magic V3 - mágikus realizmus
- Yettel topik
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Magisk
- 7600 mAh-s az aksi az iQOO új mobiljában is
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Samsung Galaxy S23 Ultra - non plus ultra
- Nothing Phone (2) - több, mint elsőre látszik
Új hozzászólás Aktív témák
-
C^^
őstag
Sziasztok,
Egy kis segítséget szeretnék kérni.
Adott egy generikus, egyirányú láncolt lista, amit be kéne járni foreach ciklussal.
Ehhez ugyebár a listának implementálnia kell az IEnumerable interfészt, amihez kell egy "felsoroló" generikus osztály, ami implementálja az IEnumerator-t (generikus formában).Ez idáig rendben is van, meg is írtam a "felsoroló" osztályt, illetve a listában implementálva van az IEnumerable interfész, hibát sem dob a fordító, viszont futásnál a foreach-t mintha egyszerűen átugraná a program.
Így néz ki a "bejáróm":
class ListaBejáró<T>:IEnumerator<T>
{
ListaElem<T> elso, akt;
public ListaBejáró(ListaElem<T> elso)
{
this.elso = elso;
akt = null;
}
public T Current
{
get { return akt.Adat; }
}
public void Dispose()
{
elso = null;
akt = null;
}
object System.Collections.IEnumerator.Current
{
get { return this.Current; }
}
public bool MoveNext()
{
if (akt==null)
{
akt = elso;
return false;
}
else
{
akt = akt.KovetkezoElem;
return true;
}
}
public void Reset()
{
akt = null;
}
}Így pedig az IEnumerable implementáció:
public IEnumerator<T> GetEnumerator()
{
ListaBejáró<T> bejaro = new ListaBejáró<T>(ElsoElem);
return bejaro;
}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
return this.GetEnumerator();
}ListaElem<T> objektumokból áll maga a láncoltlista. Az objektumnak van "Adat" mezője, és egy referenciája a következő elemre "KovetkezoElem" néven.
Magának a listának van egy "ElsoElem" mezője, ami értelemszerűen a lista első elemét jelöli.
Mi lehet a hiba?
Előre is köszönöm.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Bemutatkozott a Poco X7 és X7 Pro
- BestBuy topik
- Amit látnod kell 80’ – 90’ évek, egész estét betöltő mozi filmjei.
- Sweet.tv - internetes TV
- A CannonKeys felkavarja a slim profilos billentyűzetek állóvizét
- Mozilla Firefox
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Napelem
- További aktív témák...
- Honor Magic8 lite 512GB,Újszerű,Dobozaval,12 hónap garanciával
- Xiaomi Redmi Note 14 Pro+ 5G 512GB,Újszerű,Dobozaval,12 hónap garanciával
- Apple iPhone 12 Pro Max 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Apple iPhone 14 128GB,Átlagos,Dobozaval,12 hónap garanciával
- Apple iPhone 13 Pro 128GB,Átlagos,Dobozaval,12 hónap garanciával
- 200 - Lenovo Slim 5 (14APH8) - AMD Ryzen 7 7840HS, RTX 4060 (ELKELT)
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3050
- HIBÁTLAN iPhone 13 Pro 128GB Graphite-1 ÉV GARANCIA - Kártyafüggetlen, MS4108, 100% Akksi
- LG 32GS95UX - 32" OLED / UHD 4K / 240Hz - 480Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD RX 6500 XT 8GB Rampage SHIVA ADATA 600W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


