AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Implementierung von IEnumerable<T>

Ein Thema von faux · begonnen am 12. Mär 2006 · letzter Beitrag vom 12. Mär 2006
Antwort Antwort
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

Implementierung von IEnumerable<T>

  Alt 12. Mär 2006, 13:25
Hallo!

Eine Frage:
Wieso muss man, wenn man das Typensichere Interface IEnumerable<T> implementieren will sowohl die Typensichere Methode GetEnumerator() sowie auch die Nicht-Typensichere einbinden?

Code:
#region IEnumerable<string> Members

public IEnumerator<string> GetEnumerator()
{
  foreach (string s in strings)
  {
    yield return s;
  }
}

#endregion

#region IEnumerable Members

System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
  throw new Exception("The method or operation is not implemented.");
}

#endregion
Wozu die zweite (Nicht-Typensichere) Methode?

Danke für jede Antwort.
Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von Christian S.
Christian S.

Registriert seit: 19. Apr 2003
Ort: Düsseldorf
835 Beiträge
 
#2

Re: Implementierung von IEnumerable<T>

  Alt 12. Mär 2006, 13:34
Wieso stellst Du die Frage hier nochmal, wenn Du hier bereits gesagt hast, sie wäre geklärt?
http://www.c-sharp-forum.de/topic_IE...ndg_54080.html
Christian S.
Admin in der Entwickler-Ecke
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Implementierung von IEnumerable<T>

  Alt 12. Mär 2006, 13:45
Weil IEnumerable<T> von IEnumerable ableitet?
Da IEnumerator<T> von IEnumerator ableitet brauchst du die Methode nur einmal type safe schreiben. Für die explizite Implementierung von IEnumerable kannst du dein GetEnumerator aufrufen...
Code:
IEnumerator IEnumerable.GetEnumerator()
{
  return GetEnumerator();
}
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Implementierung von IEnumerable<T>

  Alt 12. Mär 2006, 14:00
Zitat von Elvis:
Weil IEnumerable<T> von IEnumerable ableitet?
OK, einleuchtend.
Zitat von Elvis:
Für die explizite Implementierung von IEnumerable kannst du dein GetEnumerator aufrufen...
Code:
IEnumerator IEnumerable.GetEnumerator()
{
  return GetEnumerator();
}
Danke.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz