Als «generics» getaggte Fragen

Generika sind eine Form des parametrischen Polymorphismus, der in einer Reihe von Sprachen zu finden ist, darunter .NET-Sprachen, Java, Swift und Rust.


27
Generische Liste / Aufzählung in DataTable konvertieren?
Ich habe nur wenige Methoden, die unterschiedliche generische Listen zurückgeben. Gibt es in .net eine statische Klassenmethode oder was auch immer, um eine Liste in eine Datentabelle umzuwandeln? Das einzige, was ich mir vorstellen kann, ist Reflection, um dies zu tun. WENN ich das habe: List<Whatever> whatever = new List<Whatever>(); …
261 c#  list  generics  datatable 


4
ReSharper warnt: "Statisches Feld im generischen Typ"
public class EnumRouteConstraint<T> : IRouteConstraint where T : struct { private static readonly Lazy<HashSet<string>> _enumNames; // <-- static EnumRouteConstraint() { if (!typeof(T).IsEnum) { throw new ArgumentException( Resources.Error.EnumRouteConstraint.FormatWith(typeof(T).FullName)); } string[] names = Enum.GetNames(typeof(T)); _enumNames = new Lazy<HashSet<string>>(() => new HashSet<string> ( names.Select(name => name), StringComparer.InvariantCultureIgnoreCase )); } public bool Match(HttpContextBase httpContext, …

3
Generische Methode mit mehreren Einschränkungen
Ich habe eine generische Methode, die zwei generische Parameter hat. Ich habe versucht, den folgenden Code zu kompilieren, aber es funktioniert nicht. Ist es eine .NET-Einschränkung? Ist es möglich, mehrere Einschränkungen für verschiedene Parameter zu haben? public TResponse Call<TResponse, TRequest>(TRequest request) where TRequest : MyClass, TResponse : MyOtherClass
251 c#  generics  .net-3.5 

4
Scala: Abstrakte Typen gegen Generika
Ich las Eine Tour durch Scala: Abstrakte Typen . Wann ist es besser, abstrakte Typen zu verwenden? Beispielsweise, abstract class Buffer { type T val element: T } eher, dass Generika zum Beispiel, abstract class Buffer[T] { val element: T }

11
Wie verwende ich die Klasse <T> in Java?
Es gibt eine gute Diskussion über Generika und was sie wirklich hinter den Kulissen bei dieser Frage tun. Wir alle wissen, dass dies Vector&lt;int[]&gt;ein Vektor von ganzzahligen Arrays ist und HashTable&lt;String, Person&gt;eine Tabelle, deren Schlüssel Zeichenfolgen und Werte sind Person. Was mich jedoch verblüfft, ist die Verwendung von Class&lt;&gt;. Die …


3
Groß- und Kleinschreibung wird für generisches Wörterbuch nicht berücksichtigt
Ich habe eine Anwendung, die verwaltete DLLs verwendet. Eine dieser DLLs gibt ein generisches Wörterbuch zurück: Dictionary&lt;string, int&gt; MyDictionary; Das Wörterbuch enthält Schlüssel in Groß- und Kleinschreibung. Auf einer anderen Seite erhalte ich eine Liste möglicher Schlüssel (Zeichenfolge), kann jedoch den Fall nicht garantieren. Ich versuche, den Wert im Wörterbuch …
243 c#  generics  dictionary 

7
Löschen von Java-Generika: Wann und was passiert?
Ich habe auf der Oracle-Website über Javas Typlöschung gelesen . Wann erfolgt die Typlöschung? Zur Kompilierungszeit oder zur Laufzeit? Wann wird die Klasse geladen? Wann wird die Klasse instanziiert? Viele Websites (einschließlich des oben erwähnten offiziellen Tutorials) geben an, dass die Typlöschung zur Kompilierungszeit erfolgt. Wenn die Typinformationen beim Kompilieren …


5
Übergeben von Parametern an Activator.CreateInstance <T> ()
Ich möchte eine Instanz eines Typs erstellen, den ich in einer generischen Methode angegeben habe. Dieser Typ verfügt über eine Reihe überladener Konstruktoren. Ich möchte in der Lage sein, Argumente an die Konstruktoren zu übergeben, aber Activator.CreateInstance&lt;T&gt;() sieht dies nicht als Option. Gibt es einen anderen Weg, es zu tun?

11
Generische Typkonvertierung FROM Zeichenfolge
Ich habe eine Klasse, mit der ich "Eigenschaften" für eine andere Klasse speichern möchte. Diese Eigenschaften haben einfach einen Namen und einen Wert. Im Idealfall möchte ich typisierte Eigenschaften hinzufügen können , damit der zurückgegebene "Wert" immer von dem Typ ist, den ich möchte. Der Typ sollte immer ein Grundelement …

10
Instanz eines generischen Typs erstellen, deren Konstruktor einen Parameter benötigt?
Wenn BaseFruitein Konstruktor einen akzeptiert int weight, kann ich ein Stück Obst in einer generischen Methode wie dieser instanziieren? public void AddFruit&lt;T&gt;()where T: BaseFruit{ BaseFruit fruit = new T(weight); /*new Apple(150);*/ fruit.Enlist(fruitManager); } Ein Beispiel wird hinter Kommentaren hinzugefügt. Es scheint, dass ich dies nur tun kann, wenn ich BaseFruiteinen …
229 c#  .net  generics 

13
Konvertieren Sie eine Liste von Objekten mit einem Lambda-Ausdruck von einem Typ in einen anderen
Ich habe eine foreach-Schleife, die eine Liste von Objekten eines Typs liest und eine Liste von Objekten eines anderen Typs erstellt. Mir wurde gesagt, dass ein Lambda-Ausdruck das gleiche Ergebnis erzielen kann. var origList = List&lt;OrigType&gt;(); // assume populated var targetList = List&lt;TargetType&gt;(); foreach(OrigType a in origList) { targetList.Add(new TargetType() …
224 c#  generics  lambda 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.