Thema: [C#] Sets

Einzelnen Beitrag anzeigen

Elvis

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

Re: [C#] Sets

  Alt 4. Mär 2006, 11:45
Zitat von r2c2:
Hm.. also ich seh da 2 mal void...
Was du da siehst ist einmal die wirkliche Methode, und dann 2 mal die explizite implementierung der Interfaces. Welche nur pass throughs der eigentlichen Methode sind.
Ich habe Dax gestern meine Interpretation des originalen Codes geschickt. Wie es aussieht scheint einiges in der jetzigen Version übernommen worden zu sein.

Wenn es die Ästhetik zuließ wurde das generische Interface durch eine öffentliche Methode implizit implementiert, dort wirst du nur 2 Methoden mit ähnlicher Signatur finden. Wenn selbst die generische Interface methode zu hässlich wäre, wurde sie ebenfalls explizit implementiert. Ich bin zum Beispiel kein Fan davon GetEnmerator öffentlich sichtbar zu machen, foreach braucht nur IEnumerable(<T>) aber diese hässeliche Methode bläht Intellisense IMHO nur unnötig auf...
Zitat:
Ich mein sowas:
Code:
public static implicit operator Set(object obj)
{
  Set result = new Set();
  result.Include(obj);
  return result;
}
Is nix weltbewegendes, spart aber n paar Buchstaben...
Sowas ist ganz böse... Implizite Operatoren können durchaus sinnvoll sein, aber sie können sehr schnell Code sehr unübersichtlich machen.
Ein implicit mit einem object parameter macht das Set plötzlich zuweisbar von allen Typen, wodurch man fast sämtliche Compilerprüfung verlieren würde.

Zitat:
Muss dir Recht geben. Werd das % also wahrscheinlich wieder rausnehmen...
Wäre wieder eine Verwendung eines Operators, die absolut nicht eindeutig erichtlich ist.
Wer außer dir wüte was hier passiert?
Zitat:
set3 = set1 % set2;
Zitat:
Ah und nochwas. Wie wärs mit sowas:
Code:
public Set(params T[] items)
Schaue dir die jetzige Version an, ich denke diese meiner Änderungen wurde ebenfalls übernommen.



Gibt es eigentlich irgendeinen Grund für dich mit 1.1 festzusitzen? Kann ich wirklich nicht nachvollziehen.
Immer dieses ekelhafte object-Gefriemel.
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