AGB  ·  Datenschutz  ·  Impressum  







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

[C#] Sets

Ein Thema von Dax · begonnen am 3. Mär 2006 · letzter Beitrag vom 5. Mär 2006
 
r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#7

Re: [C#] Sets

  Alt 3. Mär 2006, 19:55
Hallo

Zitat von Dax:
Tut mir Leid wenn ich dir damit zuvorgekommen bin ^^
Ich habs überlebt...

Zitat:
Einmal für IEnumerable und einmal für IEnumerable<T>. Anders gings nicht
Hm... interessant. Eigentlich sollte das doch gehen, indem du einfach kein Interface vorher angibtst. Damit sollten sich doch beide Interfaces zufrieden geben. Versteh also momentan noch nicht warums nicht geht. Wenn ich mich erst mal mit Generics befasst hab(hab momentan noch .NET 1.1 am Laufen), wird sich das wahrscheinlich klären...

Zitat:
Das wird nix... structs dürfen keine Parameterlosen Konstruktoren haben, und Feldinitialisatoren auch nicht.
Stört aber doch nicht. Nimm einfach den anderen Parameter und lass auch null zu. Und die Felder kann man auch im Konstruktor initialisieren... Bin gerade dabei Sets für .NET 1.1 zu implementieren(wenn du willst, kann ichs, wenns fertig is, ja mal anhängen) und nehm dafür structs. Hab bisher damit keine Probleme.

Wärend dessen is mir noch n bisschen was aufgefallen:
- sollte als Enumerator nicht
Code:
public IEnumerator GetEnumerator()
{
  return inner.GetEnumerator();
}
reichen? Oder geht das wegen der Generics nicht?

- Wie wärs mit m implicit operator; bei mir(ohne generics) funktioniert das nicht, da ich object als implicit-Parameter nehmen müsste und set ja von object abgeleitet ist; bei deiner Version könnts aber klappen

- Leider kann man "in" nicht überladen. Hab dafür also einfach "%" genommen. Sieht zwar nicht so toll aus, funktioniert aber...

Ah und nochwas is mir aufgefallen:
Code:
public static Set<T> operator +(Set<T> left, Set<T> right)
{
  Set<T> result = new Set<T>();
  result.inner.AddRange(left.inner);
  result.Include(right);
  return result;
}
Warum benutzt du einmal AddRange und einmal Include. Du könntest du für beides Include verwenden...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat
 


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:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz